算法
文章平均质量分 73
微凉的芬达
小白程序员,工作时间两年,贴子可能有错误和补足,希望和大家多多交流
展开
-
从简单开始,冒泡排序的思路、实现、优化
一、什么是排序算法? 顾名思义,排序算法就是将一组数据按照某种比较方法进行排序的算法,是一种算法。 例如数据是一组数字,通过排序算法可以将这组数字由小到大或由大到小排列。 例如一组数字:5,8,9,6,3,2,4,1,7。 输入排序算法后得到:1,2,3,4,5,6,7,8,9。 ps:在排序算法中只使用运算符和自己实现的方法,不然是犯规的哦~ 基础的排序算法:冒泡排序,选择排序,插入排序等。 进阶的排序算法还有:希尔排序,归并排序,桶排序,计数排序等等。 附:排序算法的稳定...原创 2021-12-02 21:51:09 · 1927 阅读 · 0 评论 -
基础算法,选择排序
关于排序算法请看我的第一篇文章(冒泡排序)。 冒泡排序 首先介绍一下选择排序各项数据:平均/最佳/最坏时间复杂度O(n²),空间复杂度O(1),稳定性:不稳定。 一、选择排序的思路。 和冒牌排序一样,选择排序的思路也和他的名字一样,或者说这个算法就是由设计思路命名的。 选择排序思路就是每次选择最小的数字,与队列首位交换位置,再从首位的下一位重复这个过程。 例如有这样一个数列: 8,5,9,6。首先从8开始。 8 5 9 6 这时最小值是...原创 2021-12-05 21:47:12 · 1254 阅读 · 1 评论 -
基础算法,插入排序
关于排序算法请看我的第一篇文章(冒泡排序)。 冒泡排序 首先介绍一下插入排序各项数据:平均/最坏时间复杂度O(n²),空间复杂度O(1),稳定性:稳定。 一、插入排序的设计思路 插入排序的思路从名字也是能够听出个大概的,就像插扑克牌一样,将数字按照一定顺序,一个一个的插入到指定位置。单从文字可能很难理解,我们上图说话。 首先有一个数组: 8 5 9 6 整个数组就相当于打扑克时候的牌堆,左面绿色的部分相当于我们手里的牌,第一张摸到8,因为手里没有牌所以直接放到手里就好。 .原创 2021-12-05 22:33:23 · 93 阅读 · 0 评论