数据结构及算法
文章平均质量分 80
飞在天空的鱼
主要做网络游戏界面的开发3D引擎.服务器开发
展开
-
排序算法之基数排序
基数排序:根据键值的每位数字来分配桶;计数排序:每个桶只存储单一键值;桶排序:每个桶存储一定范围的数值;基数排序不是直接根据元素整体的大小进行元素比较,而是将原始列表元素分成多个部分,对每一部分按一定的规则进行排序,进而形成最终的有序列表。原创 2023-05-15 12:32:06 · 1582 阅读 · 0 评论 -
排序算法之桶排序
桶排序是计数排序的变种,它利用了函数的映射关系,高效与否的关键就在于这个映射函数的确定。把计数排序中相邻的m个”小桶”放到一个”大桶”中,在分完桶后,对每个桶进行排序(一般用快排),然后合并成最后的结果。算法思想和散列中的开散列法差不多,当冲突时放入同一个桶中;可应用于数据量分布比较均匀,或比较侧重于区间数量时。桶排序最关键的建桶,如果桶设计得不好的话桶排序是几乎没有作用的。通常情况下,上下界有两种取法,第一种是取一个10^n或者是2^n的数,方便实现。另一种是取数列的最大值和最小值然后均分作桶.原创 2023-05-15 12:28:38 · 1729 阅读 · 0 评论 -
排序算法之快速排序
快速排序在排序算法中具有排序速度快,而且是就地排序等优点,使得在许多编程语言的内部元素排序实现中采用的就是快速排序,很多面试题中也经常遇到。对于其算法的改进,除了刚刚上文中提到的意外,根据实际场景还有诸多改进方法,包括对小序列采用插入排序替代,三平均划分,三分区划分等改进方法(相关的改进方法就不一一说明,有兴趣的读者可上网查阅了解)。原创 2023-05-15 11:58:16 · 934 阅读 · 0 评论 -
排序算法之归并排序
归并排序和选择排序一样,归并排序的性能不受输入数据的影响,但表现比选择排序好的多,因为始终都是O(n log n)的时间复杂度。代价是需要额外的内存空间。原创 2023-05-15 11:50:50 · 7708 阅读 · 1 评论 -
排序算法之堆排序的实现
用于记录数据结构和算法的学习过程原创 2023-05-15 11:23:12 · 1721 阅读 · 0 评论