
数据结构
ReycoChou
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
哈希冲突解决
什么是哈希冲突?假设hash表的大小为9(即有9个槽),现在要把一串数据存到表里:5,28,19,15,20,33,12,17,10简单计算一下:hash(5)=5, 所以数据5应该放在hash表的第5个槽里;hash(28)=1,所以数据28应该放在hash表的第1个槽里;hash(19)=1,也就是说,数据19也应该放在hash表的第1个槽里——于是就造成了碰撞(也称为冲突,collisi...原创 2019-04-16 13:47:03 · 465 阅读 · 0 评论 -
散列函数算法
前言解决哈希冲突部分原因取决于散列函数,一个好的散列函数的值应尽可能平均分布常用的构造散列函数1.直接寻址法取关键字或关键字的某个线性函数值为散列地址。即H(key)=key或H(key) = a•key + b,其中a和b为常数(这种散列函数叫做自身函数)2.数字分析法分析一组数据,比如一组员工的出生年月日,这时我们发现出生年月日的前几位数字大体相同,这样的话,出现冲突的几率就会很大...原创 2019-04-16 14:28:35 · 4700 阅读 · 1 评论 -
二叉树的基本实现
二叉树节点//二叉树节点 private static class TreeNode{ int value; TreeNode leftChild; TreeNode rightChild; public TreeNode(int value){ this.value=value; ...原创 2019-04-16 23:11:56 · 220 阅读 · 0 评论 -
完全二叉树
完全二叉树若设二叉树的高度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第 h 层从右向左连续缺若干结点,这就是完全二叉树。完全二叉树特点叶子结点只可能在最大的两层上出现,对任意结点,若其右分支下的子孙最大层次为L,则其左分支下的子孙的最大层次必为L 或 L+1;出于简便起见,完全二叉树通常采用数组而不是链表存储,其存储结构如下:var tree:array[...原创 2019-04-16 23:41:25 · 1563 阅读 · 0 评论 -
数组典型案例
字符数组字符数组即用来存放字符的数组,字符数组中每个元素都存放一个字符,数组元素的类型为char类型。初始化字符数组的时候最好为‘\0’结尾。如: char string []= “helloworld”;==char array [] = {‘h’,’e’,’l’,’l’,’o’,’w’,’o’,’r’,’l’,’d’,’\0’};==char array [] = {“hellowor...原创 2019-05-06 23:22:48 · 629 阅读 · 0 评论 -
栈和队列
原创 2019-07-18 10:10:29 · 149 阅读 · 0 评论 -
树的那些事儿
原创 2019-07-18 00:22:02 · 162 阅读 · 0 评论