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

    冒泡排序算法:

    第一次排序依次比较相邻的两个数,第n个数与n+1个数比较,n大则n和n+1交换,否则继续比较n+1与n+2........最后最大的数会沉底。

    第二次排序。。。。。。。。。。次大的数会沉底

    第n躺后排序完成。

    冒泡排序算法:bubbleSort

    public static void bubbleSort(int a[]){
            for (int i = a.length; i > 0; i--) {
                for(int j=0;j<i-1;j++){
                    int temp=a[j];
                    if(a[j]>a[j+1]){
                        a[j]=a[j+1];
                        a[j+1]=temp;
                    }
                }
            }
        }
        public static void printSortData(int a[]){
            for (int i =0; i<a.length; i++){
                System.out.println(a[i]);
            }
        }

    方法调用

    public static void main(String args[]){
    
    int []a={1,9,10,5,3,6,56,4};
            bubbleSort(a);
            printSortData(a);
    }

    结果如上图。时间复杂度n^2

    测试类

    import java.util.ArrayList;
    import java.util.List;
    
    public class Aaa {
        public static void main(String args[]) {
            List<Person> array = new ArrayList<Person>();
            array.add(new Person("张三", 12));
            array.add(new Person("aa", 15));
            array.add(new Person("ww", 98));
            array.add(new Person("lisi", 50));
    for (int i = array.size(); i > 0; i--) { for(int j=0;j<i-1;j++){ Person p=array.get(j); if(array.get(j).getAge()<array.get(j+1).getAge()){ array.set(j, array.get(j+1)); array.set(j+1,p); } } } for (int i = array.size()-1; i >= 0; i--){ System.out.println(array.get(i).getAge()); } } }

    person.java

    public class Person {
    
        public int age;
        public String name;
        public Person(){
            
        }
        public Person(String name,int age) {
            this.age = age;
            this.name = name;
        }
        public int getAge() {
            return age;
        }
        public void setAge(int age) {
            this.age = age;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        
    }
  • 相关阅读:
    hdu4622(后缀自动机模板)
    51nod1445(最短路)
    Java原子类--框架
    Java锁--Semaphore
    Java锁--CyclicBarrier
    Java锁--CountDownLatch
    Java锁--共享锁和ReentrantReadWriteLock
    Java锁--LockSupport
    Java锁--Condition
    Java锁--非公平锁
  • 原文地址:https://www.cnblogs.com/gne-hwz/p/7523769.html
Copyright © 2011-2022 走看看