java常见排序算法——计数排序(附代码示列)

379 ℃
public void countSort(int[] nums){
  int max = Integer.MIN_VALUE;
  int min = Integer.MAX_VALUE;
  for(int num : nums){
    max = Math.max(max, num);
    min = Math.min(min, num);
  }

  int[] countMap = new int[max-min+1];
  for(int num : nums){
    countMap[num-min]++;
  }
  int i = 0;
  int j = 0;
  while(i < nums.length && j < countMap.length){
    if(countMap[j] > 0){
      nums[i] = j+min;
      i++;
      countMap[j]--;
    } else {
      j++;
    }
  }
}

PS:按顺序统计每个数出现次数。

java常见排序算法——基数排序(附代码示列)

java常见排序算法——桶排序(附代码示列)

java常见排序算法——堆排序(附代码示列)

java常见排序算法——希尔排序(附代码示列)

java常见排序算法——归并排序(附代码示列)

标签: java排序算法, 计数排序

上面是“java常见排序算法——计数排序(附代码示列)”的全面内容,想了解更多关于 后端开发 内容,请继续关注web建站教程。

当前网址:https://m.ipkd.cn/webs_4261.html

声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

vue项目移动端如何实现上滑加载?
jquery根据属性查找元素(查找不含某个属性的元素)
vue项目中如何引入地图组件
这些行为都不利于网站优化
HTTP协议中常见的请求方法有哪些?GET请求和POST请求之间的主要区别介绍