java
fltenwall
数据科学与人工智能硕士
展开
-
快速排序的python、java、javascript实现
概述 快速排序与冒泡排序的相似处是都采取了临近比较、交换两值的方式,快速排序的特点在于运用了分治法,每次都将数组分成两个部分,与一个基准元素进行比较,比标志位大的放在标志位的右边,比标志位小的放在标志位的左边。基准元素的选择可以是简单的使用列表的第一个元素,也可以任意进行选择。 快速排序的python实现 def quickFixedFinal(startIndex, endIndex, arr=[]): if startIndex >= endIndex: return原创 2021-04-21 17:50:25 · 154 阅读 · 0 评论 -
使用java,javasript,python实现冒泡排序的三个版本
概要 冒泡排序是最简单的一种排序方式,最基础的实现用嵌套的两层for循环即可实现。但是即便是最简单的冒泡排序也存在着很大的优化空间,我们可以对两层循环分别进行优化。 首先来看一下两层for循环的作用: 外层for循环是对比较趟数的控制 内层for循环时对每一趟比较次数的控制 存在的优化空间是: 对于外层循环,如果数组已经有序,就不需要再进行外层循环了,需要一个标记来进行跟踪数组是否已经有序。而有序的标志是某一趟不再进行数据交换了。 对于内层循环,由于冒泡排序每一次是把最大的放到最后,所以后面的元素是有序的,原创 2021-04-21 16:52:03 · 181 阅读 · 0 评论