对 1,5,9,3,2,4,5,10 使用桶排序进行排序,java实现
package com.lxh.sort; /** * @Description: 桶排序 * @Author angela.li * @Date 2017/12/19 */ public class BucketSort { /** * 思路:根据给出来的数字,查看最大的数,并根据最大的数创建数组长度(最大数+1) * 数组初始值都是0,并且数字的值对应出现的次数,如a[5] 的值为2,证明 a[5] 这个位置出现两次5这个数 */ public static void main(String[] args) { int[] sortArr = {1, 5, 9, 3, 2, 4, 5, 10, 0}; int[] arr = new int[11]; for (int i : sortArr) { arr[i]++; } //升序 for (int i = 0; i < arr.length; i++) { for (int j = 1; j <= arr[i]; j++) { System.out.print(" " + i); } } System.out.println(); //降序 for (int i = arr.length-1; i >= 0; i--) { for (int j = 1; j <= arr[i]; j++) { System.out.print(" " + i); } } } }