zoukankan      html  css  js  c++  java
  • 冒泡排序

    冒泡排序:每一次排序,最大或最小的数像气泡一样升到最上面。

    也就是每次遍历都是比较相邻的俩个数,如果第i个数大于第i+1个数,则将俩个数交互位置,再继续比较相邻的俩个数。

    俩个循环,里面那个循环是比较相邻俩个数用的。里面那个循环走完,也就是说最大的数已经排到最后面了。

    外面那个循环+1,则继续选择第二大的数。

    图解:(图是盗用的)①代表第一次排序,最小的数52通过每次前后的比较,排到了最前面。②代表第二次比较,59比68小,交行位置,59没有57小,则不交换位置,则第二次排序完,第二小的数为57。

    代码如下:

     1 import java.util.Arrays;
     2 
     3 public class BubbleSort {
     4 
     5     public void sort(int[] arrs) {
     6         System.out.println(Arrays.toString(arrs));
     7         for (int i = 0; i < arrs.length; i++) {
     8             for (int j = 0; j < arrs.length - i - 1; j++) {
     9                 if (arrs[j] > arrs[j+1]) {
    10                     int temp = arrs[j];
    11                     arrs[j] = arrs[j+1];
    12                     arrs[j+1] = temp;
    13                 }
    14                 System.err.println(Arrays.toString(arrs));
    15             }
    16         }
    17     }
    18     
    19     public static void main(String[] args) {
    20         int[] arrs = {4,3,2,1,5,6,9,20,14};
    21         BubbleSort test = new BubbleSort();
    22         test.sort(arrs);
    23         System.out.println(Arrays.toString(arrs));
    24     }
    25 }

     不知道大家看懂没,第一次写博客,表达能力略差。欢迎留言评论指点一二。O(∩_∩)O

  • 相关阅读:
    MVC学习
    Net开源网络爬虫
    js调用wcf 的SOA
    Redis 上实现的分布式锁
    dojo/request
    Python,PyCharm
    如何解决卸载McAfee时出现“处于托管模式时无法删除”问题(转)
    糗事⊙︿⊙
    Oracle exp,imp
    java 生产者消费者问题 并发问题的解决(转)
  • 原文地址:https://www.cnblogs.com/chuhanlong/p/4227365.html
Copyright © 2011-2022 走看看