开发工具:
文件大小: 11mb
下载次数: 0
上传时间: 2013-05-29
详细说明: JAVA 演示冒泡算法 内有动画演示 问题 有一数组a,长度为n,把数组中的元素从小到大重新排列 思路 从0到n-1,两两比较数组中的元素,如果前者大于后者,则交换之(如a[0]>a[1],则交换a[0]和a[1])。作一趟冒泡排序后,最大值就在最后一个位置a[n-1]上了。然后对余下的0到n-2个元素作第二趟冒泡排序,次最大值就去到倒数第二个位置a[n-2]上了,如此类推。 例如对10,-3,5,34,-34,5,0,9进行排序 第一趟:-3,5,10,-34,5,0,9,34 第二趟:-3,5,-34,5,0,9,10,34 第三趟:-3,-34,5,5,0,9,10,34 第四趟:-34,-3,5,0,5,9,10,34 第五趟:-34,-3,0,5,5,9,10,34 这时不再发生交换,排序结束。 核心代码: static void sort(int[] array) { int length = array.length; int temp; boolean isSort; for(int i = 1 ; i < length; i++) { isSort = false; for(int j = 0; j < length - i; j++) { if(array[j] > array[j+1]) { //交换 temp = array[j]; array[j] = array[j+1]; array[j+1] = temp; isSort = true; } } if(!isSort) break; //如果没有发生交换,则退出循环 } } 全部代码: package com.icescut.classic.algorithm; public class BubbleSort { public static void main(String[] args) { int[] array = {10,-3,5,34,-34,5,0,9}; //test data sort(array); for(int el : array) { System.out.print(el + " "); } } static void sort(int[] array) { int length = array.length; int temp; boolean isSort; for(int i = 1; i < length; i++) { isSort = false; for(int j = 0; j < length - i; j++) { if(array[j] > array[j+1]) { //交换 temp = array[j]; array[j] = array[j+1]; array[j+1] = temp; isSort = true; } } if(!isSort) break; //如果没有发生交换,则退出循环 } } } ...展开收缩
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.