数据结构和算法
文章平均质量分 77
zhihuihuan
这个作者很懒,什么都没留下…
展开
-
线性表 && 栈和队列
首先要搞清楚线性结构这么一个概念,所谓的线性结构是指 在数据元素非空的有限集合中,存在唯一的一个被称为“第一个”的数据元素,同样唯一一个“最后一个”数据元素 除此之外,每一个元素都只有唯一一个前驱和唯一一个后继元素; 简单点说:线性结构是一种打了很多个结的没有分支的绳子;”结“就是数据结构的一个节点;线性结构{线性表: { 顺序表 : 链式表 : }栈 【原创 2014-12-25 11:14:20 · 516 阅读 · 0 评论 -
KMP算法-理解字符串匹配KMP算法
字符串匹配是计算机的基本任务之一。举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串"ABCDABD"?许多算法可以完成这个任务,Knuth-Morris-Pratt算法(简称KMP)是最常用的之一。它以三个发明者命名,起头的那个K就是著名科学家Donald Knuth。这种算法不太容易理解,网上转载 2014-12-26 13:50:37 · 460 阅读 · 0 评论 -
为什么要使用指向指针的指针
在看大型C工程的时候,经常能看到char ** 甚至 void **这样指向指针的指针,有很多人都不明白,为什么要非得用指向指针的指针其实总结起来,如果你在函数外定义的指针有内容,或者这个内容只是供调用他的函数使用 ,那么你完全没有必要使用void **这样的方式来访问你的数据,只需要void * 这样的指针就行了,但是当我们需要在函数内部修改外部指针时,那么这时候就显的尤为必要了,总原创 2014-11-12 11:30:12 · 1610 阅读 · 0 评论