重温算法第一篇:冒泡排序
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”领红包,领到大红包的小伙伴赶紧使用哦!
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(四):结合BotSharp
· 一个基于 .NET 开源免费的异地组网和内网穿透工具
· 《HelloGitHub》第 108 期
· Windows桌面应用自动更新解决方案SharpUpdater5发布
· 我的家庭实验室服务器集群硬件清单