冒泡排序

来源:互联网 发布:chrome 无法调用 java 编辑:程序博客网 时间:2024/06/05 18:54

冒泡排序是一种简单的交换类排序。其基本思路是,从头开始扫描待排序的元素,在扫描过程中依次对相邻元素进行比较,将关键字值大的元素后移。每经过一趟排序后,关键字值最大的元素将移到末尾,此时记下该元素的位置,下一趟排序只需要比较到此位置为止,直到所有元素都已有序排列。

一般地,对n个元素进行冒泡排序,总共需要进行n-1趟。第1趟需要比较n-1次,第2趟需要比较n-2次,......第i趟需要比较n-i次。


package com.sort;public class BubbleSort {/** * @param args *///从大到小排序public static void sort(int []values){int length = values.length;for(int i = 0; i < length -1; i++){for(int j = i + 1; j < length; j++){if(values[i]<values[j]){int temp = values[i];values[i] = values[j];values[j] = temp;}}}}//从小到大排序public static void sort1(int []values){int length = values.length;for(int i = 0; i < length -1; i++){for(int j = i +1; j < length ; j++){if(values[i]>values[j]){int temp = values[i];values[i] = values[j];values[j] = temp;}}}}public static void main(String[] args) {// TODO Auto-generated method stubint []array = {25,2,6,9,12,14,52,13,16,-1};sort(array);System.out.println("从大到小排序:");for(int i = 0; i < array.length; i++){if(i != array.length -1){System.out.print(array[i]+">");}else{System.out.print(array[i]);}}System.out.println();sort1(array);System.out.println("从小到大排序:");for(int i = 0; i < array.length; i++){if(i != array.length -1){System.out.print(array[i]+"<");}else{System.out.print(array[i]);}}}}




0 0
原创粉丝点击