![](https://img-blog.csdnimg.cn/20190908195553753.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构和算法
学习学习算法
热之决斗者
这个作者很懒,什么都没留下…
展开
-
算法--快速排序
1 快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想----分治法也确实实用;基本思想:1.先从数列中取出一个数作为基准数。2.分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。3.再对左右区间重复第二步,直到各区间只有一个数。int AdjustArray(int s[], int l, in...原创 2019-10-27 10:21:56 · 111 阅读 · 0 评论 -
算法--堆
1堆就是用数组实现的二叉树,所有它没有使用父指针或者子指针。堆根据“堆属性”来排序,“堆属性”决定了树中节点的位置。堆属性:堆分为两种:最大堆和最小堆,两者的差别在于节点的排序方式。在最大堆中,父节点的值比每一个子节点的值都要大。在最小堆中,父节点的值比每一个子节点的值都要小。这就是所谓的“堆属性”,并且这个属性对堆中的每一个节点都成立。一个堆中的节点的高度为该节点到根节点最长简...原创 2019-10-22 20:15:19 · 238 阅读 · 0 评论 -
算法--散列表
1 散列表的定义:散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则称表M为哈希(Hash)表,函数f...原创 2019-10-20 10:33:06 · 423 阅读 · 0 评论