数据结构与算法--note
huihuiwith
这个作者很懒,什么都没留下…
展开
-
【数据结构与算法】第1~2章 引论和算法分析
数学基础如果存在正常数 c 和 使得当 N >= 时 ,则记为 。f上界 如果存在正常数 c 和 使得当 N >= 时 ,则记为 。g下界 当且仅当 和 则 。 如果对所有常数 c 存在 使得当 N > 时 ,则记为 。法则1:如果 且 ,那么(或者 ); 。法则2:如果 T(N) 是一个 k 次的多项式,则 。法则3:对任意常数 k,...原创 2018-08-07 15:37:48 · 132 阅读 · 0 评论 -
【数据结构与算法】第3章 表、栈和队列
目录表 ADTSTL 库中的向量和链表iterator 类和 const_iterator 类向量 ADT 的实现链表 ADT 实现栈 ADT队列 ADT表 ADTSTL 库中的向量和链表表 ADT(abstract data type)在 STL 中有两个流行的实现。vector 给出了表 ADT 的可增长的数组实现。使用 vector 的优点在于其在...原创 2018-08-13 18:06:29 · 212 阅读 · 0 评论 -
【数据结构与算法】第4章 树
Table of Contents树的实现二叉树查找树 ADT -- 二叉查找树AVL 树伸展树B 树树在标准库中的应用对于大量的输入数据,链表的线性访问时间太长,不宜使用。树的实现由于树的每个结点的儿子数可能变化很大并且事先不知道,因此在数据结构中建立到各儿子结点的直接链接是不可行的,因为这会产生太多浪费的空间。最好的办法是使用:第一儿子/下一兄弟表示法。...原创 2018-08-27 18:25:35 · 303 阅读 · 0 评论 -
【数据结构与算法】第6章 优先队列(堆)
目录二叉堆d堆左式堆斜堆二项队列标准库中的优先队列具有特殊优先级的队列叫做优先队列。像操作系统中,调度算法往往会使用优先队列结构。优先队列至少允许下列两种操作:insert,deleteMin(找出、返回和删除优先队列中的最小项)。二叉堆下面将讨论其结构性质和堆序性质。(1)结构性质二叉堆是一棵被完全填满的二叉树(即完全二叉树),可能的例外是在底层,底层...原创 2018-10-08 13:39:16 · 419 阅读 · 0 评论 -
【数据结构与算法】第5章 散列
目录基本思想散列函数解决冲突可扩散列基本思想理想的散列表数据结构只不过是一个包含一些项的具有固定大小的数组。每个项都有一个键值,查找等操作根据项的键(key)来进行。表的大小设为 TableSize,将每个键映射到从 0~TableSize-1 这个范围中的某个数,这个映射就称为散列函数,散列函数应该是运算简单,而且要在单元间均匀地分配键。当两个键散列到同一个值就叫做冲突。...原创 2018-09-30 12:01:12 · 170 阅读 · 0 评论 -
【数据结构与算法】第7章 排序
这一章将讨论的是元素数组的排序问题。大部分内容的排序整个是在主存中完成,这样的排序元素个数一般比较少(少于几百万),不能在主存中完成的这类排序叫做外部排序,也很重要。预备知识在 STL 中,排序是通过使用函数模板 sort 来完成的。sort 的参数反映了一个容器的头尾标志,以及一个可选的比较器:void sort ( Iterator begin, Iterator end ); ...原创 2018-11-20 09:25:49 · 224 阅读 · 1 评论 -
【数据结构与算法】第8章 不相交集类
WTF 不知所云原创 2019-02-26 19:24:24 · 182 阅读 · 0 评论