编程之美2.5 寻找最大的k个树
来源:互联网 发布:通信工程和java 编辑:程序博客网 时间:2024/05/16 08:52
5.查找最小的k个元素
题目:输入n个整数,输出其中最小的k个。
题目:输入n个整数,输出其中最小的k个。
例如输入1,2,3,4,5,6,7和8这8个数字,则最小的4个数字为1,2,3和4。
#include <cstdlib>#include <iostream>#include <vector>using namespace std;void MaxHeapify(int a[], int i, int n){ int left = 2*i+1; int right = 2*i+2; int largest = i; if(a[left] < a[i] && left <= n) largest = left; if(a[right] < a[i] && right <= n) largest = right; if(largest != i) { int temp; temp = a[i]; a[i] = a[largest]; a[largest] = temp; MaxHeapify(a, largest, n); }}void print(int B[], int n){ for(int i = 0; i < 10; i++) cout << B[i]<< " "; cout<< endl;}int main(int argc, char *argv[]){ int a[10] = {32, 98, 33, 88, 75, 1, 34, 56, 100, 3}; int n = 9; int t; for(int i = n/2; i >= 0; i--) MaxHeapify(a, i, n); while(cin >> t) { if(a[0] < t) { a[0] = t; MaxHeapify(a, 0, n); } print(a, n); } return 0;}
- 编程之美2.5 寻找最大的k个树
- 编程之美之2.5 寻找最大的K个数
- 编程之美2.5 寻找最大的K个数
- 编程之美 2.5 寻找最大的K个数(1)
- 编程之美2.5寻找最大的K个数
- 编程之美2.5 寻找最大的K个数
- 编程之美 2.5 寻找最大的K个数
- 编程之美-2.5寻找最大的K个数
- 编程之美-2.5寻找最大的K个数
- [编程之美] 2.5 寻找最大的K个数
- 算法->编程之美2.5 寻找最大的K个数
- 【编程之美】2.5寻找最大的k个数
- 编程之美------2.5 寻找最大的K个数
- 编程之美2.5 寻找最大的K个数
- 编程之美 2.5 寻找最大的K个数
- 编程之美2.5 寻找最大的K个数
- 编程之美系列之寻找最大的K个数
- 编程之美之寻找最大的k个数
- 雷电
- list列表中添加多个【只修改了一个属性的对象】
- javascript里构建类的4种方式
- 数字图像处理 读书笔记四 电磁波谱
- android或linux调试addr2line工具锁定命令的使用
- 编程之美2.5 寻找最大的k个树
- 装饰模式C++实现
- .NET 对象创建
- hello
- Android异常:android.os.NetworkOnMainThreadException
- Android添加一个新的按键
- 编写一个截取字符串的函数,按字节截取
- js与jQuery获取文本框的值
- 产品经理类产品的探索之路