重温算法第一篇:冒泡排序
2018年5月23日16:58:35
闲来无事,复习一下算法
java版本1:次数为 list.size()*list.size()-1 public class test { public static void main(String[] args) {
List<Integer> list = new ArrayList<Integer>(); list.add(4); list.add(3); list.add(1); list.add(2); list.add(2); list.add(2); list.add(22); list.add(2); for (int i = 0; i < list.size(); i++) { for (int j = 0; j < list.size()-1; j++) { int a = list.get(j); int b = list.get(j+1); if(a>b){ list.set(j, b); list.set(j+1, a); System.out.println(list.size()); } } } System.out.println(list); } }
java 版本2:
for (int i = 0; i < list.size(); i++) {
for (int j = 0; j < list.size()-1-i; j++) {
int a = list.get(j);
int b = list.get(j+1);
System.out.println(++num);
if(a>b){
list.set(j, b);
list.set(j+1, a);
}
}
}
python 版本1: #!/usr/bin/python # -*- coding: UTF-8 -*- #算法 list1=[4,1,5,6,8,41,23,546,56,34,67,45,99] #compare len(list1)*len(list1)-1 for x in range(len(list1)): for i in range(len(list1)-1): print list1 a = list1[i] b = list1[i + 1] if a>b: list1[i]=b list1[i+1]=a print list1
python 版本2: 次数为len(list1)-1+len(list1)-2+len(list1)-3 ... 直到0
for x in range(len(list1)):
for i in range(len(list1)-x-1):
num = num+1
print num
a = list1[i]
b = list1[i + 1]
if a>b:
list1[i]=b
list1[i+1]=a
print list1
转载注明出处
如果本文对你有帮助,请帮忙啦~~
打开支付宝首页搜“522901509”领红包,领到大红包的小伙伴赶紧使用哦!