![](https://img-blog.csdnimg.cn/2019091813595558.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构与算法
--
吃醉了的彩虹糖
这个作者很懒,什么都没留下…
展开
-
哈希表
哈希表哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。通过Key可以直接确定查找值所在位置,而不需要一个个比较。这样就**“预先知道”**key所在的位置,直接找到数据,提升效率。 数组的特点是:寻址容易,插入和...原创 2020-03-15 19:26:05 · 120 阅读 · 0 评论 -
排序
排序介绍算法复杂度1.度量一个程序(算法)执行时间 1).事后跑程序,看所需的时间(依赖于计算机硬件、软件等因素); 2).事前估算:分析时间复杂度。常见的时间复杂度:常数阶O(1),对数阶O(log2n),线性阶O(n),线性对数阶O(nlog2n),平方阶O(n^2),立方阶O(n^3),...,k次方阶O(n^k),指数阶O(2^n)。随着问题规模n的不断...原创 2020-03-03 22:47:56 · 83 阅读 · 0 评论 -
递归
含义递归算法是一种直接或间接地调用自身的算法,每次调用时传递不同的变量。在计算机编写程序中,递归算法对解决一大类问题是十分有效的,它往往使算法的描述简洁而且易于理解。回溯与递归的区别:区别:递归算法:是一种直接或间接地调用自身的算法回溯:是一种系统地搜索问题的解的方法,也叫试探法。换句话说就是:一个方向的路一直往前走,能走则走,不能走则退回来换一个方向再试。回溯法主要解决问题类型:...原创 2020-03-01 17:03:00 · 157 阅读 · 0 评论 -
栈,队列,堆
栈先进后出Stack 类表示后进先出(LIFO)的对象堆栈。它通过五个操作对类 Vector 进行了扩展 ,允许将向量视为堆栈。它提供了通常的 push 和 pop 操作,以及取堆栈顶点的 peek 方法、测试堆栈是否为空的 empty 方法、在堆栈中查找项并确定到堆栈顶距离的 search 方法。队列先进先出...原创 2020-02-25 21:23:05 · 110 阅读 · 0 评论