Java算法——>简单的冒泡排序

来源:互联网 发布:小学点读机软件下载 编辑:程序博客网 时间:2024/05/16 12:24

算法中需要掌握的简单的冒泡排序   话不多说 我们看如下:

/** * 把一个 混乱的数组 int arr[] = {2,2323,23,456,1,342}; * 按照有序排列  也就是我们常说的冒牌排序  * 还是按照我们以前所说的 当我们遇到问题时,我们把问题肢解。 * 1、首先我们想把一个混乱的数组排列成有序的,我们应该先找出最大的(或者最小的) * 2、然后我们依次按照次方法进行循环 就可以排列出想要的顺序了,思路都有了,实现吧!  * @author Administrator * */public class BubbleSorted {public static int arr[] = {2,2323,23,456,1,342};public static void main(String[] args) {test(arr);}public static void test(int arr[]){//首先按照我们说的从arr[]中找到最大的  思路: 想想现在你有一杯水 一杯coffee 怎么把 两个杯子里的液体调换  ?//对 再拿个杯子,你很聪明!那么来吧。 因为考虑到数组的长度可能会经常用到 我们把他提取成变量。int len = arr.length;//为了使这个排序方法 提高效率 我们可以做个判断 加入 再次循环的时候没有排位的变化 我们就停止循环boolean boo = true;for(int j =0;j<len-1;j++){boo = true;//假定有序System.out.println("第"+(j+1)+"趟");for(int i =0;i<len-1-j;i++){System.out.println("第"+(i+1)+"次");if(arr[i]<arr[i+1]){int temp = arr[i];//把水倒进 temp杯子中arr[i] = arr[i+1];//把coffee倒进刚开始盛水的杯子中arr[i+1] = temp;//最后把temp杯子中的水倒入刚开始盛coffe的杯子中boo = false;//如果这里发生了变化  就把boo置为false}System.out.println(Arrays.toString(arr));}if(boo){break;}}}}
在不知道该干嘛的时候,做好眼前事。

0 0