web建站教程
     
  1. 首页
  2. 前端UI组件库
  3. AI项目和框架
  4. 前端知识
  5. AI应用
  6. IT知识
  7. ComfyUI插件
  8. 地图大全
  9. 休息站

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

730 ℃
public void heapSort2(int[] nums) {
  for(int i = nums.length/2-1; i >= 0; i--){
      sift(nums, i, nums.length);
  }
  for (int i = nums.length-1; i > 0; i--) {
      int temp = nums[0];
      nums[0] = nums[i];
      nums[i] = temp;
      sift(nums, 0, i);
  }
}

private void sift(int[] nums, int parent, int len) {
  int value = nums[parent];
  for (int child = 2*parent +1; child < len; child = child*2 +1) {
      if(child+1 < len && nums[child+1] > nums[child]){
          child++;
      }
      if(nums[child] > value){
          nums[parent] = nums[child];
          parent = child;
      } else {
          break;
      }
  }
  nums[parent] = value;
}

PS:大顶堆实现升序,每次将最大值移到堆的最后一个位置上

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

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

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

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

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

标签: java排序算法 堆排序

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

当前网址:https://ipkd.cn/webs_4260.html

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

当前位置: 首页 > 后端开发
扣子空间 – 免费全能AI办公智能体
Trae:新一代免费的AI编程工具
日历:
上一篇:
下一篇:
x 打工人ai神器
x 扫一扫打开藏历小程序

打开微信“扫一扫”查看今日藏历!