java数据结构 冒泡排序的遍历与排序
Java  /  管理员 发布于 4年前   351
java的冒泡排序是一种简单的排序规则
冒泡排序的原理:
比较两个相邻的数,首先将最大的排在第一个,第二次比较第二个 ,此后一样;
针对所有的元素重复以上的步骤,除了最后一个
例题;将int array[] = {1,2,34,3,423,23,23,2};这个数组使用冒泡排序法从小到大排序
分析:使用for来取数 ,嵌套for来循环
交换使用if(array[i] > array[j]){
int temp = array[i];
array[i] = array[j];
array[j] = temp;
/** * 使用冒泡排序数组 * @author Administrator * */public class paixu { public static void main(String[] args) { // TODO Auto-generated method stubint array[] = {1,2,34,3,423,23,23,2}; for(int i = 0;i<array.length;i++){ for(int j = i+1;j<array.length;j++){ if(array[i] > array[j]){int temp = array[i];array[i] = array[j];array[j] = temp;}}}//遍历for(int i = 0;i<array.length;i++){int num = array[i];System.out.print(num +"\t");}} } /*运行结果1 2 2 3 23 23 34 423 */
例体 2:;将int array[] = {1,2,34,3,423,23,23,2};这个数组使用冒泡排序法从大到小排序
分析:使用for来取数 ,嵌套for来循环
交换使用if(array[i] <array[j]){
int temp = array[i];
array[i] = array[j];
array[j] = temp;
/** * 使用冒泡排序数组 * @author Administrator * */public class paixu {public static void main(String[] args) {// TODO Auto-generated method stubint array[] = {1,2,34,3,423,23,23,2};for(int i = 0;i<array.length;i++){for(int j = i+1;j<array.length;j++){if(array[i] < array[j]){int temp = array[i];array[i] = array[j];array[j] = temp;}}}//遍历for(int i = 0;i<array.length;i++){int num = array[i];System.out.print(num +"\t");}}}/*运行结果4233423233221*/
冒泡排序就是把小的元素往前调或者把大的元素往后调。比较是相邻的两个元素比较,交换也发生在这两个元素之间
例题 3:
在一个数组中插入几个数,使用冒泡排序找出最大的一个数
package 冒泡排序;/*找出做大的一个数*/public class ArrayBub {private long[] a;private int nElems;public ArrayBub(int max){a =new long[max];nElems= 0;} //定义一个插入的方法public void insert(int value){a[nElems] = value;nElems++;}//定义一个显示的方法public void display(){for(int i= 0;i<nElems;i++){System.out.println(a[i]);}}//冒泡排序public void bubbleSort(){for(int i = 0;i<nElems-1;i--){for(int j = 0;j<nElems;j++){if(a[j]>a[j+1]){swap(j,j+1);}}}}//交换public void swap(int one,int two ){long temp = a[one];a[one] = a[two];a[two] = temp;;}}package 冒泡排序;public class BubbleSortApp {public static void main(String[] args) {int maxSize = 100;ArrayBub arr = new ArrayBub(maxSize);for(int i = 0;i<5;i++){arr.insert(10 + i);}arr.insert(101);arr.insert(1033);arr.insert(102);arr.insert(1034);arr.display();arr.bubbleSort();arr.display();}}/*运行结果1034*/
123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..路人 在
php中使用hyperf框架调用讯飞星火大模型实现国内版chatgpt功能示例中评论 教程很详细,如果加个前端chatgpt对话页面就完美了..Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号