![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
堆排序
小魚兒.
天下皆白,唯我独黑!
展开
-
9.7 堆排序基础知识准备
堆排序基础知识:#include <cstdio>//堆排序//因为堆是一棵完全二叉树,固可用数组来表示const int maxn=100;int heap[maxn],n=10;//heap 为堆,n为元素个数//堆由上向下调整:将每个结点V与其孩子比较,若有比其大的,则交换他们的位置//直到没有比他大的或没有孩子结点//对heap数组在[low,high]...原创 2019-10-24 16:04:14 · 97 阅读 · 0 评论 -
PAT A1098 Insertion or Heap Sort (25 分)(插入排序还是堆排序)
1098 Insertion or Heap Sort (25 分)According to Wikipedia:Insertion sort iterates, consuming one input element each repetition, and growing a sorted output list. Each iteration, insertion sort remo...原创 2019-10-23 16:13:23 · 184 阅读 · 0 评论 -
Code Up 9.7问题 C: 合并果子(堆)(优先队列及堆实现)
问题 C: 合并果子(堆)题目描述在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。 每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过n-1次合并之后,就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所耗体力之和。 因为还要花大力气把这些果子搬...原创 2019-10-23 15:19:13 · 136 阅读 · 0 评论 -
Code Up 9.7问题 B: 序列合并(堆排序)
问题 B: 序列合并题目描述有两个长度都为N的序列A和B,在A和B中各取一个数相加可以得到N2个和,求这N2个和中最小的N个。输入第一行一个正整数N(1 <= N <= 100000)。第二行N个整数Ai,满足Ai <= Ai+1且Ai <= 109第三行N个整数Bi,满足Bi <= Bi+1且Bi <= 109输出...原创 2019-10-22 16:04:24 · 176 阅读 · 0 评论 -
Code Up 9.7问题 A: 算法10-10,10-11:堆排序
问题 A: 算法10-10,10-11:堆排序题目描述堆排序是一种利用堆结构进行排序的方法,它只需要一个记录大小的辅助空间,每个待排序的记录仅需要占用一个存储空间。首先建立小根堆或大根堆,然后通过利用堆的性质即堆顶的元素是最小或最大值,从而依次得出每一个元素的位置。堆排序的算法可以描述如下:在本题中,读入一串整数,将其使用以上描述的堆排序的方法从小到大排序,并输出。...原创 2019-10-22 15:01:00 · 347 阅读 · 0 评论