news 2026/4/18 9:46:14

计算机等级考试—数组构建大顶队—东方仙盟

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
计算机等级考试—数组构建大顶队—东方仙盟

一步步构建大顶堆

  1. 初始数组A = [2, 8, 7, 1, 3, 5, 6, 4]
  2. 堆的结构:数组长度为 8,完全二叉树的最后一个非叶子节点索引为⌊8/2⌋ - 1 = 3,所以我们从索引 3 开始,依次向上调整。

步骤 1:调整索引 3(值为 1)

  • 子节点:索引 7(值为 4)
  • 4 > 1 → 交换,数组变为:[2, 8, 7, 4, 3, 5, 6, 1]

步骤 2:调整索引 2(值为 7)

  • 子节点:索引 5(值为 5)、索引 6(值为 6)
  • 7 > 5 且 7 > 6 → 无需交换

步骤 3:调整索引 1(值为 8)

  • 子节点:索引 3(值为 4)、索引 4(值为 3)
  • 8 > 4 且 8 > 3 → 无需交换

步骤 4:调整索引 0(值为 2)

  • 子节点:索引 1(值为 8)、索引 2(值为 7)
  • 8 > 2 → 交换,数组变为:[8, 2, 7, 4, 3, 5, 6, 1]
  • 继续调整索引 1(值为 2):子节点索引 3(值为 4)、索引 4(值为 3)
  • 4 > 2 → 交换,数组变为:[8, 4, 7, 2, 3, 5, 6, 1]
  • 继续调整索引 3(值为 2):子节点索引 7(值为 1)
  • 2 > 1 → 无需交换

什么是大顶堆(Max Heap)

大顶堆是一种完全二叉树结构,满足两个核心条件:

  1. 结构上:是一棵完全二叉树,即除了最后一层,其他层的节点都被填满,且最后一层的节点尽量靠左排列。
  2. 堆性质:每个父节点的值大于或等于它的所有子节点的值,因此堆顶(根节点)是整个堆中的最大值。

在数组表示中:

  • 对于索引为i的节点:
    • 左子节点索引:2i + 1
    • 右子节点索引:2i + 2
    • 父节点索引:⌊(i-1)/2⌋

二、用 Mermaid 图展示大顶堆构建过程

初始数组:A = [2, 8, 7, 1, 3, 5, 6, 4]

1. 初始完全二叉树(未满足堆性质)

graph TD A((2)) --> B((8)) A --> C((7)) B --> D((1)) B --> E((3)) C --> F((5)) C --> G((6)) D --> H((4))

2. 调整最后一个非叶子节点(索引 3,值为 1)

graph TD A((2)) --> B((8)) A --> C((7)) B --> D((4)) B --> E((3)) C --> F((5)) C --> G((6)) D --> H((1))

(交换 1 和 4,使子节点不大于父节点)

3. 调整索引 2(值为 7)

graph TD A((2)) --> B((8)) A --> C((7)) B --> D((4)) B --> E((3)) C --> F((5)) C --> G((6)) D --> H((1))

(7 ≥ 5 且 7 ≥ 6,无需交换)

4. 调整索引 1(值为 8)

graph TD A((2)) --> B((8)) A --> C((7)) B --> D((4)) B --> E((3)) C --> F((5)) C --> G((6)) D --> H((1))

(8 ≥ 4 且 8 ≥ 3,无需交换)

5. 调整根节点(索引 0,值为 2)

graph TD A((8)) --> B((2)) A --> C((7)) B --> D((4)) B --> E((3)) C --> F((5)) C --> G((6)) D --> H((1))

(交换 2 和 8,使根节点为最大值)

6. 继续调整索引 1(值为 2)

graph TD A((8)) --> B((4)) A --> C((7)) B --> D((2)) B --> E((3)) C --> F((5)) C --> G((6)) D --> H((1))

(交换 2 和 4,使父节点值≥子节点)

最终大顶堆(数组:[8, 4, 7, 2, 3, 5, 6, 1]

graph TD A((8)) --> B((4)) A --> C((7)) B --> D((2)) B --> E((3)) C --> F((5)) C --> G((6)) D --> H((1))

阿雪技术观

在科技发展浪潮中,我们不妨积极投身技术共享。不满足于做受益者,更要主动担当贡献者。无论是分享代码、撰写技术博客,还是参与开源项目维护改进,每一个微小举动都可能蕴含推动技术进步的巨大能量。东方仙盟是汇聚力量的天地,我们携手在此探索硅基生命,为科技进步添砖加瓦。

Hey folks, in this wild tech - driven world, why not dive headfirst into the whole tech - sharing scene? Don't just be the one reaping all the benefits; step up and be a contributor too. Whether you're tossing out your code snippets, hammering out some tech blogs, or getting your hands dirty with maintaining and sprucing up open - source projects, every little thing you do might just end up being a massive force that pushes tech forward. And guess what? The Eastern FairyAlliance is this awesome place where we all come together. We're gonna team up

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 7:59:19

幽冥大陆(一百06)云点卯注册人员接口—东方仙盟练气期

增加/更新人员form方式提交URL:attrecordController.do?addface描述:使用form-data方式提交请求:参数类型是否必填说明usernameString是tokenString是tokenunitnoString是组织机构编码orgCodepersonphotosform表单file是头像personnameStrin…

作者头像 李华
网站建设 2026/4/18 6:25:04

B站资源全能助手:5分钟掌握BiliTools高清下载秘籍

B站资源全能助手:5分钟掌握BiliTools高清下载秘籍 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持视频、音乐、番剧、课程下载……持续更新 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTool…

作者头像 李华
网站建设 2026/4/16 17:20:51

5分钟搞定B站视频AI总结:BiliTools让你的学习效率翻倍

5分钟搞定B站视频AI总结:BiliTools让你的学习效率翻倍 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持视频、音乐、番剧、课程下载……持续更新 项目地址: https://gitcode.com/GitHub_Trending/bilit/Bili…

作者头像 李华
网站建设 2026/4/18 6:31:41

彻底解放你的Obsidian:这个神奇插件让所有界面秒变中文

彻底解放你的Obsidian:这个神奇插件让所有界面秒变中文 【免费下载链接】obsidian-i18n 项目地址: https://gitcode.com/gh_mirrors/ob/obsidian-i18n 还在为Obsidian里满屏的英文插件而烦恼吗?每次想要调整设置,都要在脑海里进行翻译…

作者头像 李华
网站建设 2026/4/18 8:48:25

告别信息过载:用AI智能总结重构你的B站学习体验

告别信息过载:用AI智能总结重构你的B站学习体验 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持视频、音乐、番剧、课程下载……持续更新 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

作者头像 李华
网站建设 2026/4/17 9:23:11

BongoCat桌面伴侣终极指南:让你的电脑操作充满情感温度

BongoCat桌面伴侣终极指南:让你的电脑操作充满情感温度 【免费下载链接】BongoCat 让呆萌可爱的 Bongo Cat 陪伴你的键盘敲击与鼠标操作,每一次输入都充满趣味与活力! 项目地址: https://gitcode.com/gh_mirrors/bong/BongoCat 你是否…

作者头像 李华