前两天刚装了python 3.1.1, 禁不住技痒写点code。
1.选择排序
>>> def SelSort(L): length=len(L) for i in range(length-1): minIdx=i minVal=L[i] j=i+1 while j<length: if minVal>L[j]: minIdx=j minVal=L[j] j=j+1 L[i],L[minIdx]=L[minIdx],L[i] return L
2.冒泡排序
>>> def bubSort(L): swapped=True while swapped: swapped=False for i in range(len(L)-1): if L[i]>L[i+1]: L[i],L[i+1]=L[i+1],L[i] swapped=True return L
>>> def merge(left,right): result=[] i,j=0,0 while i<len(left) and j<len(right): if left[i]<=right[j]: result.append(left[i]) i=i+1 else: result.append(right[j]) j=j+1 result+=left[i:] result+=right[j:] return result>>> def mergesort(L): if len(L) < 2: return L else: middle = int(len(L)/2) left = mergesort(L[:middle]) right = mergesort(L[middle:]) return merge(left, right)
冒泡排序 from typing import List """ 核心思想是循环length-1次,每次循序找出最大或者最小的一个数,每次比较相邻的两个数,如果大或者小就交换位置,每一次循环可以比较当次最大的一个数。 例如 3, 10, -1, 20,8 - 第一次循环 1. 指针下移指向 3 3和10比较 不交换 3 10 -1 20 8 2. 指针下移指向 10 10>-1 交换
本文向大家介绍JavaScript 冒泡排序和选择排序的实现代码,包括了JavaScript 冒泡排序和选择排序的实现代码的使用技巧和注意事项,需要的朋友参考一下 废话不多说了,直接给大家贴代码了,具体代码如下所述: 下面在看下Javascript实现三种排序:冒泡排序、选择排序、插入排序的代码 以上所述是小编给大家介绍的JavaScript 冒泡排序和选择排序的实现代码,希望对大家有所帮助,如果
这是选择排序吗?我认为这是泡泡排序,因为我使用的是(点)compareto。我在互联网上看不同的来源,所以我可以做一个。这是密码。
本文向大家介绍java冒泡排序和快速排序代码,包括了java冒泡排序和快速排序代码的使用技巧和注意事项,需要的朋友参考一下 冒泡排序: 基本思想:在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。 快速排序: 算法:当数据量很大适宜采用该方法。采用二分
本文向大家介绍Scala实现冒泡排序、归并排序和快速排序的示例代码,包括了Scala实现冒泡排序、归并排序和快速排序的示例代码的使用技巧和注意事项,需要的朋友参考一下 1、冒泡排序 2、归并排序 3、快速排序 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。
冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。 作为最简单的排序算法之一,冒泡排序给我的感觉就像 Abandon 在单词书里出现的感觉一样,每次都在第一页第一位