
数据结构与算法
奔跑的大伟哥
这个作者很懒,什么都没留下…
展开
-
常用数据结构与算法
布隆过滤器(判断值是否已存在,需要多个哈希函数(不精确))布谷过滤器(判断值是否已存在,精确判断,哈希的一种应用,二维哈希)跳表skiplist(多级有序数据结构)hyperloglog(计数器,根据概论统计(不精确))...原创 2019-12-31 16:02:28 · 121 阅读 · 0 评论 -
数据结构与算法(五)检索(查找)基本算法
概念检索表:待查找的数据容器,例如线性表、树表(树、二叉树、B/B+树)等关键字:key关键字值:key对应的value检索/查找:Search1. 线性表的检索1.1 顺序检索可用于所有线性表,包括顺序表和链表。1.2 二分法检索只能用于顺序表(数组)。1.2.1 黄金分割点检索与二分法检索类似,但是分割检索区间的方式不同;二分法以二等分的方式分割检索区间,黄金分割点以...原创 2019-11-23 10:38:26 · 1061 阅读 · 0 评论 -
bitmap算法
class bitmap{public: bitmap(size_t maxNum) //初始化,根据最大值初始化数组大小 { _v = new size_t[(maxNum >> 5) + 1](); } ~bitmap() { if (nullptr != _v) {...原创 2018-03-09 16:35:36 · 216 阅读 · 0 评论 -
数据结构与算法(一)常用数据结构
1. 数据结构什么是数据、数据元素、数据项、数据对象、数据类型?数据:万物都是数据,数据就是能输入计算机和被程序处理的符号数据元素:数据元素是数据的基本单位;是具体的数据;每一个学生的信息就是一个数据元素数据项:一个数据元素由若干个数据项构成;学生的姓名、学号等都是学生信息数据元素的一个数据项数据对象:具有相同性质的数据元素的集合,是数据的一个子集;例如:整数数据对象,字符数据对象,...原创 2019-10-10 09:25:09 · 232 阅读 · 0 评论 -
数据结构与算法(二)简单数据结构
1. 线性表由n个相同类型的元素组成的有限序列有且仅有一个第一个节点(头节点)和最后一个节点(末节点),第一个元素无前趋,最后一个元素无后继,其余元素只有一个前趋一个后继1.1 顺序表(sequence list) 内存连续,连续存储,相邻元素在内存中的位置也相邻 优点: 1. 无需为表示数据元素之间的关系而增加额外的存储空间 2. 可以随机...原创 2019-10-10 09:25:24 · 151 阅读 · 0 评论 -
数据结构与算法(三)树与二叉树
1. 树非线性结构,层次结构每个元素至多有一个前趋,但可以有多个后继;根结点没有前趋,其他结点有且只有一个前趋数据元素间是一对多的关系树、二叉树、森林树是n(n>=0)个结点的有限集合,当n=0时为空树,否则称为非空树。 1. 树有且仅有一个根结点 2. 除根节点外,其余结点可分为m(m>=0)个互不相交的集合,每个集合本身又是一棵树,称为根的子树 ...原创 2019-10-10 09:25:39 · 285 阅读 · 1 评论 -
数据结构与算法(四)图与网
1. 图图是由非空的顶点集合V和描述顶点间联系的弧(或边)的集合E组成的二元组,既G=(V,E)有向图 :V={vi} ; E={<vi,vj>} , vi->vj无向图 :V={vi} ; E=(<vi,vj>) , vi - jn 表示顶点数,e 表示边或弧的数目无向图: e 的取值范围 0 ~ n(n-1)/2 有向完全图:e = ...原创 2019-10-10 09:25:46 · 5050 阅读 · 0 评论