随笔分类 -  数据结构与算法分析

数据结构之栈
摘要:栈模型 栈有时又叫做LIFO(先进后出)。 一般模型:存在某个元素位于栈顶,而该元素是唯一的可见元素。 栈可能是计算机科学中数组之后最基本的数据结构 栈的实现 栈的链表实现 优点:没有任何地方设计栈大小(空栈除外) 缺点:对malloc和free调用都是昂贵的。 栈的数组实现 每一个栈有一个TopO 阅读全文

posted @ 2017-10-27 10:02 Mr.Tan& 阅读(485) 评论(0) 推荐(0) 编辑

数据结构之散列
摘要:散列是一种用于以常数平均时间执行插入,删除和查找的技术 一般想法 一个关键字就是一个带有相关值的字符串。我们把表大小记作Table-Size,并将其理解为散列数据结构的一部分而不仅仅是浮动于全局的某个标量。 每个关键字被映射到从0到TableSize-1的这个范围中的某个数,这个映射就叫做散列函数 阅读全文

posted @ 2017-10-25 09:19 Mr.Tan& 阅读(3302) 评论(0) 推荐(1) 编辑

数据结构之队列
摘要:像栈一样,队列也是表。使用队列时插入在一端进行而删除则在另一端进行。 队列基本模型 队列的数组实现 如同栈一样,对于队列而言任何表的实现都是合法的。 对于每一个队列数据结构,我们保留一个数组Queue[]以及位置Front和Rear,它们代表队列两端。还要记录实际存在队列中元素的个数Size。 这种 阅读全文

posted @ 2017-10-20 09:40 Mr.Tan& 阅读(263) 评论(0) 推荐(0) 编辑

数据结构之优先队列
摘要:模型 优先队列是允许至少下列两种操作的数据结构:插入,和删除最小者。 插入等价入队,删除等价出队。 二叉堆 二个性质: 结构性 堆序性 结构性质 堆是一颗被完全填满的二叉树,有可能的例外是在底层,底层上的元素从左到右填入。这样的树称为完全二叉树。 利用数组表示二叉堆 一个堆数据结构由一个数组,一个代 阅读全文

posted @ 2017-10-17 09:17 Mr.Tan& 阅读(1266) 评论(1) 推荐(2) 编辑

数据结构之树
摘要:数据结构之树 平均操作时间O(log N). 定义 定义树的一种自然方式是递归方法。 一棵树是一些节点的集合。这个集合可以是空集;若非空,则这一颗树由称做根的节点r以及0个或多个非空的树T1,T2,…..Tk组成,这些子树中每一棵的根都被来自根r的一条有向的边所连接。 一棵树是N个节点和N-1条边的 阅读全文

posted @ 2017-05-01 11:58 Mr.Tan& 阅读(708) 评论(2) 推荐(3) 编辑

数据结构之链表
摘要:链表 定义 链表是由一系列不必在内存中相连的结构组成。每一个结构均含有表元素和指向下一个表结构的指针。 使用链表时,留出一个标志节点,表示表头或者哑节点。 链表 定义 链表是由一系列不必在内存中相连的结构组成。每一个结构均含有表元素和指向下一个表结构的指针。 使用链表时,留出一个标志节点,表示表头或 阅读全文

posted @ 2017-02-17 23:45 Mr.Tan& 阅读(303) 评论(0) 推荐(0) 编辑

导航

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8
点击右上角即可分享
微信分享提示