堆
堆是一种数据结构,一般用数组的形式创建,数组的下标从1开始。
堆满足两点要求:
1.是一棵完全二叉树
2.父节点的值比子节点的值大
c++代码实现
main.cpp
#include<stdio.h>
#include<iostream>
using namespace std;
template <typename item>
class MaxHeap {
private:
item* data;
int count;
public:
MaxHeap(int capacity) {
data = new int[capacity + 1];
count = 0;
}
~MaxHeap() {
delete[] data;
}
int size() {
return count;
}
bool isEmpty() {
return count == 0;
}
};
int main() {
MaxHeap<int> maxheap = MaxHeap<int>(100);
cout << maxheap.size()<<endl;
}