- package com.eshore.sweetop.sort;
- import java.util.Arrays;
- public class Count {
- public static int[] sort(int a[]){
- int[] b=new int[a.length];
- //100是基数,可以处理100以下的排序,根据实际情况调整
- int[] c=new int[100];
- for (int i = 0; i < a.length; i++) {
- c[a[i]]=c[a[i]]+1;
- }
- for (int i = 1; i < c.length; i++) {
- c[i]=c[i]+c[i-1];
- }
- for (int i = b.length-1; i >-1 ; i--) {
- b[c[a[i]]-1]=a[i];
- c[a[i]]=c[a[i]]-1;
- }
- return b;
- }
- public static void main(String[] args) {
- int[] a={2,3,7,4,6,11,9,8,1};
- a=sort(a);
- System.out.println(Arrays.toString(a));
- }
- }
算法-----计数排序
最新推荐文章于 2024-07-11 12:39:43 发布