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

    1.冒泡排序:

          实现思想:相邻的两个元素比较,反序就交换.

          时间复杂度:O(n2)

    public static void main(String[] args) {
            int[]arr={33,5,8,9,7,6,3,1,2,4,45};
            bubbleSort(arr);
            for(int i:arr){
                System.out.print(i+",");
            }
        }
        public static void bubbleSort(int[]arr){
            for(int i=0;i<arr.length-1;i++){
                for(int j=arr.length-1;j>i;j--){
                    if(arr[j]<arr[j-1]){
                        int a=arr[j];
                        arr[j]=arr[j-1];
                        arr[j-1]=a;
                    }
                }
            }
        }

    2.冒泡排序的优化:设置一个标志位.避免有序情况下的没必要循环

    public static void main(String[] args) {
            int[]arr={33,5,8,9,7,6,3,1,2,4,45};
            bubbleSort2(arr);
            for(int i:arr){
                System.out.print(i+",");
            }
        }
        public static void bubbleSort2(int[]arr){
            boolean flag=true;
            for(int i=0;i<arr.length-1&&flag;i++){
                flag=false;
                for(int j=arr.length-1;j>i;j--){
                    if(arr[j]<arr[j-1]){
                        int a=arr[j];
                        arr[j]=arr[j-1];
                        arr[j-1]=a;
                        flag=true;
                    }
                }
                
            }
            
        }

  • 相关阅读:
    TCP 登录实现代码
    网络编程步骤 乔老师整理
    网络编程步骤 乔老师整理
    UDP 编程 客服咨询回复
    UDP 编程 客服咨询回复
    利用java在服务器和客服端建立连接,进行通讯(代码实例)
    利用java在服务器和客服端建立连接,进行通讯(代码实例)
    InetAddress 类简介
    InetAddress 类简介
    Mysql并发时经典常见的死锁原因及解决方法
  • 原文地址:https://www.cnblogs.com/2nao/p/6427087.html
Copyright © 2011-2022 走看看