数据结构
文章平均质量分 67
明明77
这个作者很懒,什么都没留下…
展开
-
Hash算法原理
散列表,它是基于高速存取的角度设计的,也是一种典型的“空间换时间”的做法。顾名思义,该数据结构能够理解为一个线性表,可是当中的元素不是紧密排列的,而是可能存在空隙。 散列表(Hash table,也叫哈希表),是依据关键码值(Key value)而直接进行訪问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来訪问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。转载 2017-12-13 19:07:31 · 155 阅读 · 0 评论 -
数据结构--字符串
字符串与子串、子序列C/C++标准库提供的字符串处理函数 strlen() 返回s的长度,不包括字符串结束符null strcmp(s1,s2) 比较两个字符串s1和s2是否相同。若s1与s2星等,返回1,若s1大于s2,返回整数,若s1小于s2,则返回负数 strcat(s1,s2) 将字符串s2连接到s1后,并返回s1 strcpy(s1,s2) 将s2复制给s1,转载 2017-12-15 00:00:06 · 288 阅读 · 0 评论 -
KMP算法
解决问题类型字符串匹配算法说明一般匹配字符串时,我们从目标字符串str(假设长度为n)的第一个下标选取和ptr长度(长度为m)一样的子字符串进行比较,如果一样,就返回开始处的下标值,不一样,选取str下一个下标,同样选取长度为n的字符串进行比较,直到str的末尾(实际比较时,下标移动到n-m)。这样的时间复杂度是O(n*m)。KMP算法:可以实现复杂度为O(m+n)为何简化了时间复杂度: 充分利用转载 2017-12-15 00:09:51 · 514 阅读 · 0 评论