![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
排序 稳定性 复杂度
天空灬之城
这个作者很懒,什么都没留下…
展开
-
Java常用的八种排序算法与代码实现
目录:1.直接插入排序2.希尔排序3.简单选择排序4.堆排序5.冒泡排序6.快速排序7.归并排序8.基数排序1.直接插入排序经常碰到这样一类排序问题:把新的数据插入到已经排好的数据列中。将第一个数和第二个数排序,然后构成一个有序序列将第三个数插入进去,构成一个新的有序序列。对转载 2017-04-18 12:05:05 · 554 阅读 · 0 评论 -
程序员必知8大排序3大查找(三)
三种查找算法:顺序查找,二分法查找(折半查找),分块查找,散列表(以后谈)一、顺序查找的基本思想:从表的一端开始,顺序扫描表,依次将扫描到的结点关键字和给定值(假定为a)相比较,若当前结点关键字与a相等,则查找成功;若扫描结束后,仍未找到关键字等于a的结点,则查找失败。 说白了就是,从头到尾,一个一个地比,找着相同的就成功,找不到就失败。很明转载 2017-07-01 10:20:49 · 264 阅读 · 0 评论 -
程序员必知8大排序3大查找(一)
程序员必知!1、直接插入排序 (1)基本思想:在要排序的一组数中,假设前面(n-1) [n>=2] 个数已经是排好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数也是排好顺序的。如此反复循环,直到全部排好顺序。(2)实例 2、希尔排序(也称最小增量排序)(1)基本思想:算法先转载 2017-07-01 10:14:41 · 350 阅读 · 0 评论 -
程序员必知8大排序3大查找(二)
本文我们先把剩余的三大排序说完,然后讨论一下排序的稳定性问题,最后再总结一下排序的时间复杂度和空间复杂度。(1到5见上篇)6、快速排序 (1)基本思想:选择一个基准元素,通常选择第一个元素或者最后一个元素,通过一趟扫描,将待排序列分成两部分,一部分比基准元素小,一部分大于等于基准元素,此时基准元素在其排好序后的正确位置,然后再用同样的方法递归地排序划分的两部分。转载 2017-07-01 10:17:37 · 259 阅读 · 0 评论