#include algorithm>class Max_max-heapify">
搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
秋刀鱼在做梦
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
【日常记录-Docker】ARG与ENV
2
群晖开启https ssl证书获取及安装_wndows11安裝群暉證書位置
3
云计算day03
4
【稳点检索|权威出版】第二届科学教育与当代体育国际会议(ICSECS 2024)_2024 international conference on science education
5
论文导读 | 深度图生成模型简介_利用深度图得到形貌
6
Swagger2入门
7
保姆级教程:搭建自己的 Minecraft 服务器,跟好友一起玩!_mc服务器
8
AI大模型知识点大梳理_ai大模型是什么
9
mysql登录时出现Access denied for user ‘root‘@‘localhost‘ (using password: YES)_mysql access denied for user 密码正确
10
数据结构之树的基本概念_树 数据结构的概念
当前位置:
article
> 正文
最大堆排序Max_Heapify_max-heapify
作者:秋刀鱼在做梦 | 2024-08-07 17:55:06
赞
踩
max-heapify
//
Max_Heapify.cpp : Defines the entry point for the console application.
//堆排序是一种原地排序,如果试图引入数组,那么将失去这一优势。
//最大堆满足条件A[Parent[i]]>=A[i]
#include
"
stdafx.h
"
#include
<
iostream
>
#include
<
algorithm
>
class
Max_Heapify
...
{
private
:
int
m_size;
int
Parent(
int
i)
...
{
return
i
/
2
; }
int
Left(
int
i)
...
{
return
2
*
i; }
int
Right(
int
i)
...
{
return
2
*
i
+
1
;}
void
Max_Adus_Heapify(
int
A[],
int
i)
...
{
int
l
=
Left(i);
int
r
=
Right(i);
int
largest
=
i;
if
((l
<=
m_size)
&&
(A[l]
>
A[i]))
//
largest
=
l;
//
从元素A[Left(i)],A[Right(i)],A[i]找出最大的元素。
if
((r
<=
m_size)
&&
(A[r]
>
A[largest]))
largest
=
r;
//
并将下标存放在largest中。如果A[i]最大,则以i为根的子树而使i及其子树满足堆的性质。
if
(largest
!=
i)//如果A[i]是最大的,则以i为根的子树已是最大根,程序结束。
...
{
std::swap(A[i], A[largest] );
//
Max_Adus_Heapify(A, largest);
//
}
//
下标为largest的节点在交换后的值是A[i],以该节点为根的子树又有可能违反最大堆的性质。因而要递归调用。
}
void
Build_Max_Heapify(
int
A[])
...
{
for
(
int
i
=
m_size
/
2
; i
>=
0
; i
--
)
Max_Adus_Heapify(A, i);
}
//
建堆:子数组A[n/2+1...n]中的元素都是叶子节点,因此每个都可以看作只含一个元素的堆.
//
m_size/2与m_size一样都正确,也就是上面句子的解释。
public
:
Max_Heapify():m_size(NULL)
...
{}
Max_Heapify(
int
A[],
int
size)
...
{
m_size
=
size-1;
Build_Max_Heapify(A);
}
void
Heap_Sort(
int
A[])
...
{
Build_Max_Heapify(A);
for
(
int
i
=
m_size; i
>=
1
; i
--
)
...
{
std::swap(A[
0
], A[i]);
--
m_size;
Max_Adus_Heapify(A,
0
);
}
}
//
Build_Max_Heapify(),将使A[0]达到最大值。这样一直循环交换存放在数组A[i]中,递归调用。
~
Max_Heapify()
...
{}
}
;
int
main(
int
argc,
char
*
argv[])
...
{
int
A[
11
]
=
...
{
30
,
45
,
22
,
72
,
9
,
12
,
26
,
80
,
22
,
43
,
1
}
;
int
size
=
sizeof
(A)
/
sizeof
(A[
0
]);
Max_Heapify p(A, size);
p.Heap_Sort(A);
std::copy(A, A
+
11
, std::ostream_iterator
<
int
>
(std::cout,
"
"
));
return
0
;
}
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/秋刀鱼在做梦/article/detail/943802
推荐阅读
article
ts将
依赖
从
npm
改成
国内
环境
p
npm
,_p
npm
切换
国内
源...
文章介绍了如何在中国
环境
中优化Node.js开发,包括
切换
至淘宝镜像源解决
npm
下载问题,使用p
npm
管理包和
依赖
,配置...
赞
踩
article
Android
布局
属性
tools
分析_
android
布局
中
tools
...
一、
tools
属性说明/**【标识】当前的
布局
文件是用于MainActivity这个activity*/xmlns:to...
赞
踩
article
1
张图
,
拆解
阿里
P8
高级
架构师
必会
技术
栈!...
大家都知道
,
阿里
P8
高级
技术
专家
,
基本上是一线
技术
人能达到的最高职级
,
也是很多程序员追求的目标。达到年入百万的P8 Ja...
赞
踩
article
Android
事件
传递
机制_父
布局
子
布局
事件
传递
...
最近想学习一下自定义View,发现其中有个麻烦的滑动冲突处理问题,为了应对滑动冲突,决定先研究一下
Android
的
事件
传...
赞
踩
article
Spring
Boot
整合
Spring
AI
实现
项目
接入
ChatGPT
(
Open
Al
的
调用
,
开...
Spring
Boot
整合
Spring
AI
实现
项目
接入
ChatGPT
(
Open
Al
的
调用
,
开发属于你自己
Al
,
体...
赞
踩
article
word
embedding
词嵌入_
embedding
词嵌入...
word
embedding
词嵌入One hot representationDistributed represent...
赞
踩
article
【大
模型
】
GPT
-
2
_
gpt
2
...
GPT
-
2
是OpenAI在
2
019年提出的预训练语言
模型
,旨在通过无监督学习提高泛化能力,无需下游任务的标注信息。它使用...
赞
踩
article
【
Hugging
Face】如何从
hub
中下载文件_
huggingface
-
cli
download
...
本文详细介绍了如何使用
huggingface
_
hub
库从
Hugging
Face Hub下载和缓存单个文件或整个代码库。...
赞
踩
article
登录
和
注册
用户
drf
-
Django
Rest
Framework框架,万能模版_
django
d...
注册
接口的实现首先你需要定义好自己的
注册
序列化器apps/user/serializer.pyclass UserSig...
赞
踩
article
Ubuntu18.04 搭建
qt
arm64
编译环境_
ubuntu
arm64
安装
qt
...
Ubuntu18.04 搭建
qt
arm64
编译环境_
ubuntu
arm64
安装
qt
ubuntu
arm64
安装
qt
...
赞
踩
article
n2n
搭建
手记-
1
-V
1
...
搭建
环境supernode :阿里云主机一台 aly
1
(Centos 6.5)edg2node:美团云机器两台 mty
1
...
赞
踩
article
Stable
Diffusion
AI
绘画:从提示词到模型出图的全景指南_
stable
diffus...
它通过分析大量图像数据,学习到了如何
生成
高质量的图像。_
stable
diffusion
生成
全景图
stable
dif...
赞
踩
article
python
中的列表
生成式
...
1.列表
生成式
(List Comprehensions) 列表
生成式
:是
python
内置的比较简单但是功能强大的用于生...
赞
踩
article
My
SQL
2
DML和
SQL
约束...
DML和
SQL
约束
My
SQL
2
DML和
SQL
约束 SQ...
赞
踩
article
模型
微调:如何处理
数据
集
的
不
平衡和
不
一致性_最新
的
深度
学习
模型
针对
数据
不
平衡...
本文探讨了深度
学习
中
数据
不
平衡和
不
一致问题,介绍了代价敏感
学习
方法,如加权损失函数、对抗训练、软标签和迁移
学习
,通过调整...
赞
踩
article
保姆级讲解
Elasticsearch
服务
搭建
配置
与
管理
_
elasticsearch
配置
文件
...
结构化数据非结构化数据半结构化数据
Elasticsearch
是什么The Elastic Stack, 包括 Elas...
赞
踩
article
从
“
百模
”
到
“
千体
”
:
大
模型
智能
体的竞争格局、
商业模式
和技术挑战_
baichuan4
...
原本平静的5月,从14日凌晨OpenAI发布GPT-4o开始热闹起来。一天之后,谷歌在一年一度的开发者
大
会上发布
智能
助理...
赞
踩
article
二叉
搜索
树
:
堆
:
最大
堆
的
建立,插入和删除_
最大
堆
搜索
树
...
前面我们讲到栈和队列
的
时候,这两种数据结构都是按时间
的
先后顺序来排列,如栈是按先进后出(FILO),后入先出
的
原则排列。...
赞
踩
article
PCIe
各版本结构剖析
_
pciegen3
gen4pcs
层...
最近在学习驱动开发过程中涉及到PCI相关知识,在网上看了很多文章,良莠不齐,我总结一下比较好的文章分享给大家,那就从源...
赞
踩
article
为防
学生
用
ChatGPT
作弊
,
大学教授
开始恢复纸质
考试
或改
用
口试
,
网友:幸好已毕业......
西风 发自 凹非寺量子位 | 公众号 QbitAI教授们真被
ChatGPT
逼急了——不等到开学
,
就表示新一学期考核要
用
回...
赞
踩
相关标签
npm
前端
node.js
typescript
后端
android
java
安卓
android studio
移动开发
spring
spring boot
人工智能
深度学习
gpt-3
语言模型
python
django
drf
qt
开发语言
ubuntu
网络
开发工具