
排序算法
文章平均质量分 51
清风自渡人归路
微信公众号同名,主要续写人生感悟。
展开
-
如何搞定快速排序?
快速排序原创 2023-05-21 19:33:10 · 107 阅读 · 0 评论 -
时间复杂度
时间复杂度是衡量算法好坏的一个重要指标。衡量代码的好坏,包含两个非常重要的指标运行时间占用空间如果代码没有运行起来,怎样预知到代码运行所消耗的时间呢?**由于运行环境和输入规模的影响,代码的绝对执行时间是无法估计的,但是为我们可以预估出代码的基本操作的执行次数。通过代码的执行次数来判断代码的好坏基本执行次数关于代码的基本操作执行次数,使用生活的场景来做一下比喻。例子1:1...原创 2019-10-18 20:05:09 · 304 阅读 · 0 评论 -
python冒泡排序之参数设置
记得我写第一篇关于冒泡序列的博客时,我就在想,冒泡排序可以正序和倒序,唯一的区别就是将符号换一下。那我如果要两种排序方式都用的话,一样的代码岂不是要写两遍?????不是吧,太麻烦了。 ̄へ ̄ ̄へ ̄于是乎,哈哈哈哈,参数就出现了1.设置一个参数,给定一个默认值,True的时候是正序;False的时候是倒序。def mm(a,reverse=True): if reverse:#如果re...原创 2019-07-23 22:54:56 · 277 阅读 · 2 评论 -
python插入排序
1.排序原理:%1.假如说以升序进行排列的话,下标为0的第一个元素作为参考值。%2.插入排序是从元素为1开始的,尽可能插到前面(即按照排序的方式找到最适合自己的位置)。%3.插入的时候分为插入位置和试探位置。%4.第一层循环从1开始,到列表的长度终止。第二层循环主要是确定试探位置,从i的位置开始,到0终止。倒着进行循环%5.如果被试探位置的元素比插入元素大,那么试探元素后移一位,插入元素...原创 2019-07-24 10:49:42 · 113 阅读 · 0 评论 -
排序算法之选择排序
1.原理:首先在末排序中找到最小(大)元素,存放到排序的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。依次类推,直到所有元素均排序完毕。这个是原理图:这个是柱状图:2.代码展示:def nn(a): for i in range(len(a)): max_index=i#设置最大值索引 for j in ...原创 2019-07-25 10:07:55 · 158 阅读 · 0 评论 -
排序算法之快速排序
1.什么是快速排序?快速排序是从冒泡排序演变而来,但是比冒泡排序要高效的多,所以叫做快速排序。快速排序之所以快速是因为他使用了分治法。2.那么什么是分治法呢?分治法就是选取一个基准元素,将比基准元素小的元素放在他的左边,比他大的元素放在他的右边。...原创 2019-08-05 10:21:46 · 238 阅读 · 0 评论