随笔分类 -  9.7堆

摘要:1 #include<iostream> 2 using namespace std; 3 int m,n,cbt[1010],num; 4 void postOrder(int root) { 5 if(root > n) return; 6 postOrder(root*2); 7 postOr 阅读全文
posted @ 2020-03-14 16:53 tangq123 阅读(430) 评论(0) 推荐(0)
摘要:大致题意就是给出一个完全二叉树的层次序列,按根右左的顺序,输出所有从根结点到叶子结点的路径。最后判断这个完全二叉树是大顶堆,或小顶堆,或非堆。 思路: 1,可以先序遍历(根左右)的方式,用二维动态数组vector 存储所有从根结点到叶子结点的路径,然后倒着输出这些路径。 2,可以根据堆的性质,判断完 阅读全文
posted @ 2020-03-13 10:44 tangq123 阅读(121) 评论(0) 推荐(0)
摘要:判断是否是插入排序的部分与 1035 插入与归并一样。 本题主要考察 堆排序的原理和实现。 首先,把所有双亲结点进行向下调整, 建立大顶堆; 然后,把堆顶元素 与 待排序区的最后一个元素 交换并对堆顶元素向下调整, 如此重复 n-1 次,待排序区逐渐变小,有序区逐渐变大。 1 #include<io 阅读全文
posted @ 2020-03-05 12:43 tangq123 阅读(156) 评论(0) 推荐(0)