算法
麦麦麦造
这个作者很懒,什么都没留下…
展开
-
排序算法系列——快速排序
什么是快速排序?快速排序,顾名思义它排序的速度十分的快。它快到什么程度呢?C语言标准库中的qsort函数就是使用快速排序实现的!说到快速排序,离不开两个重要的概念: 递归 和 分治算法(Divide ans conquer, D&C)。如果要讲清楚这两个概念,可以单独写两篇文章出来了。因此这里不做深入,只简单介绍一下:递归:重复调用自己的函数。一般由两个部分组成基线条件 和...原创 2019-12-10 23:12:49 · 187 阅读 · 0 评论 -
排序算法系列——冒泡排序
冒泡排序是是一种比较基础简单的算法。它的原理是通过对比前后的元素大小,将较大的数换到后面的方式来实现排序 。排序过程举个例子:假如现在有一个无序数组disorder_arr = [4,2,19,10,-1]。第一步:取第0个元素4,和第1个元素2对比,发现4比2大。第二步:交换4与2的索引。即第0个元素为2,第1个元素为4,disorder_arr =[2,4,19,10,-1...原创 2019-12-05 14:51:35 · 183 阅读 · 0 评论 -
排序算法系列——选择排序
什么是选择排序选择排序可以说是众多排序算法中,最基础、最直观的一个算法了。它的思想十分简单:遍历列表,找出最小的一个数,记下索引将最小的数添加到新的列表中,同时删除原数组中的数重复第一步排序过程举个例子:假如现在有一个无序数组disorder_arr = [4,2,19,10,-1],和一个空数组order_arr = []第一步: 遍历数组 找到disorder...原创 2019-12-03 12:34:13 · 225 阅读 · 0 评论