zoukankan      html  css  js  c++  java
  • java的两种冒泡算法

    所谓的冒泡算法,就是给数组进行排序,可以根据以小到大的顺序,也可以根据以小到大的顺序,在数组的封装类java.util.Arrays通过sort方法进行按升序的排序。那不用类的话怎么进行呢?

    思路一:

    设数组的长度为N: 
    (1)比较前后相邻的二个数据,如果前面数据大于后面的数据,就将这二个数据交换。

    (2)这样对数组的第0个数据到N-1个数据进行一次遍历后,最大的一个数据就“沉”到数组第N-1个位置。

    (3)N=N-1,如果N不为0就重复前面二步,否则排序完成。

      public static void bubblin(int[] a, int l) {
            int i, j;
            for (i = 0; i < l; i++) {
                for (j = 1; j < l - i; j++) {
                    if (a[j - 1] < a[j]) {//升序为小于号,降序为大于号
                        int num = a[j - 1];
                        a[j - 1] = a[j];
                        a[j] = num;
                    }
                }
            }
        }
      public static void main(String args[]) {
            int[] a = {1, 2, 3, 4, 0, 6, 5, 8};
            bubblin(a, 8);
            for (int x : a) {
                System.out.print(x);
            }
        }
    

      

    思路二:

    让数组的每一个元素和数组里面除了自己的其他元素进行对比,如果有比它小的数值就进行交换位置

     public static void bubblin2(int[] a, int l) {
            for (int i = 0; i < l; i++) {
                for (int j = i + 1; j < l; j++) {
                    if (a[j] < a[i]) {
                        int num = a[i];
                        a[i] = a[j];
                        a[j] = num;
                    }
                }
            }
        }
    
        public static void main(String args[]) {
            int[] a = {1, 2, 3, 4, 0, 6, 5, 8};
            bubblin2(a, 8);
            for (int x : a) {
                System.out.print(x);
            }
        }
    

      

  • 相关阅读:
    HCIA-Storage:第五章 常用存储协议介绍
    HCIA-Storage:SAN基础业务配置和使用:IPSAN,FCSAN
    RH2288v3常用的知识
    不常见的RAID,RAID2,RAID4,RAID7
    华为存储设备管理ip修改
    HCIA-Storage:第七章存储可靠性
    HCIA-Storage:第四章存储系统结构
    SSH服务见解
    shell学习笔记之正则表达式
    shell学习笔记之crontab
  • 原文地址:https://www.cnblogs.com/mmykdbc/p/8777392.html
Copyright © 2011-2022 走看看