算法 线性排序-区间法
来源:互联网 发布:sql update数值 编辑:程序博客网 时间:2024/06/06 02:52
public class Sort {
public static int[] sort(int[] a) {
int min = Integer.MAX_VALUE;
int max = Integer.MIN_VALUE;
Map<Integer, Integer> counts = new HashMap<Integer, Integer>();
for (int i = 0; i < a.length; i++) {
if (a[i] < min) {
min = a[i];
}
if (a[i] > max) {
max = a[i];
}
if (counts.containsKey(a[i])) {
counts.put(a[i], counts.get(a[i]) + 1);
} else {
counts.put(a[i], 1);
}
}
int c = 0;
for (int i = min; i <= max; i++) {
if (counts.containsKey(i)) {
for (int j = 0; j < counts.get(i); j++) {
a[c++] = i;
}
}
}
return a;
}
public static void main(String[] args) {
int[] a = { 4, 3, 2, 5, 3, 6, 2, 10, 8, 12, 6, 7 };
sort(a);
System.out.println(Arrays.toString(a));
}
}
- 算法 线性排序-区间法
- 线性排序算法
- 线性时间排序算法
- 算法-线性时间排序
- 算法 线性排序-计数排序
- 算法 线性时间排序算法
- 【算法】一些线性排序算法
- linear线性级排序算法
- 线性时间复杂度排序算法
- 线性时间的排序算法
- 线性算法 排序之归并
- 线性时间排序-算法导论
- 算法导论--线性时间排序
- 排序算法(4)-线性时间排序
- 线性时间排序算法-计数排序
- 排序算法之分配排序(线性时间排序)
- 排序算法(五)-- 线性时间排序之计数排序
- 算法导论-- 线性时间排序(计数排序、基数排序、桶排序)
- linux断点续传
- vm中centos的NAT联网设置
- Eclipse快捷键
- LAMP的环境的搭建
- java一些简单的知识
- 算法 线性排序-区间法
- 简单分析一下Android恢复出厂设置的流程
- 71.Simplify Path
- 三极管显身手 电平转换及驱动电路
- select函数
- About a full duplex ALSA application
- linux下,使用opencv训练级联分类器opencv_traincascade
- Xamarin iOS教程之显示和编辑文本
- 各种bar的隐藏