首页 > 代码库 > 算法导论第八章__实现计数排序
算法导论第八章__实现计数排序
计数排序:不需要比较就能得出排序的顺序__例如,本章的计数排序、基数排序、桶排序
比较排序:需要进行比较才能得出排序的顺序__例如,本章的堆排序、快速排序(本质是插入排序)、插入排序
代码清单:计数排序__完美演绎下标的作用
public class Count_Sort { //接收需要排序的数组 private int[] A; //排序后的数组 private int[] B; //用于计数的数组 private int[] C; // 初始化 public Count_Sort(int[] A) { this.A = A; B = new int[A.length]; C = new int[innitTemp()]; } // 初始化临时数组的大小 public int innitTemp() { int bigest = A[0]; for (int i = 1; i < A.length; i++) { if (A[i] > bigest) { bigest = A[i]; } } return bigest+1; } // 计数排序 public void sort() { // 把i中对应的元素映射到C中 for (int i = 0; i < A.length; i++) { int value = http://www.mamicode.com/A[i];>输出的结果:
0 4 2 3 1 2
--------------------------------------------------------------
0 4 6 9 10 12
--------------------------------------------------------------
1 1 1 1 2 2 3 3 3 4 5 5
--------------------------------------------------------------
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。