收藏 分享(赏)

冒泡排序原理和JAVA实现.doc

上传人:kpmy5893 文档编号:9416537 上传时间:2019-08-06 格式:DOC 页数:2 大小:48KB
下载 相关 举报
冒泡排序原理和JAVA实现.doc_第1页
第1页 / 共2页
冒泡排序原理和JAVA实现.doc_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

1、冒泡排序原理和 JAVA实现分类: Algorithm2010-12-17 16:23 1658 人阅读 评论(1) 收藏 举报javastringclassnull冒泡排序是一种比较排序,下面我实现一个从小到大的冒泡排序:先定义两个变量:待排序数组:int source;数组长度 length = source.length;原理如下:1、开始:有 length-1 次循环,每次参与循环的是未排序的数。第一次参与循环的是整个数组,因为假设整个数组是无序的。每次循环需要设置一个标志位: boolean flag = false;表示循环过程中是否产生了交换。2、过程:循环过程中, 相邻的两个元

2、素进行比较,如果 sourcej sourcej+1,则交换两者顺序,同时标志位 flag = true;表示产生了交换。每一次循环结束后,最大数沉到未排序部分的尾部,每次循环找出一个最大数。3、结束:每次循环结束后,如果标志位 flag 未改变的话,证明未排序的部分中没有sourcej sourcej+1,即未排序部分已经有序,这时,跳出循环,排序结束。或者 length-1 次循环结束后,数组有序。为什么是 length-1 次而不是 length 循环,因为每次循环找出一个最大数,沉下去,length-1 次循环后,只剩下一个元素,不需要进行任何比较,它就是最小的。JAVA 代码如下:j

3、ava view plaincopy1. package sort; 2. import java.util.Scanner; 3. public class bubbleSort 4. public void sort(int source) 5. int length = source.length; 6. boolean flag = false; 7. for(int i=1;i sourcej+1) 11. int temp = sourcej; 12. sourcej = sourcej+1; 13. sourcej+1 = temp; 14. flag = true; 15. 1

4、6. 17. if(flag = false) 18. break; 19. 20. 21. 22. public static void main(String args) 23. Scanner in = new Scanner(System.in); 24. bubbleSort bs = new bubbleSort(); 25. while(in != null) 26. int num = in.nextInt(); 27. int source = new intnum; 28. for(int i=0;inum;+i) 29. sourcei = in.nextInt(); 30. 31. bs.sort(source); 32. for(int a:source) 33. System.out.print(a+“ “); 34. 35. System.out.println(); 36. 37. 38. 分享到:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报