使用向量在c ++中堆积

时间:2015-01-30 16:48:09

标签: c++ vector stl

lastline如何工作?
它会产生最大堆还是最小堆?

int myints[] = {10,20,30,5,15};

std::vector<int> v(myints,myints+5);

std::make_heap (v.begin(),v.end());

1 个答案:

答案 0 :(得分:0)

std::make_heap是&#34;堆&#34;的一部分标准库中的函数。它们都通过使用底层数据存储来工作。在您提供的情况下,您使用std::vector作为数据存储。

调用std::make_heap传递数据存储的范围将堆积其内容,从而使第一个元素的值最大,并满足std::push_heapstd::pop_head的所有要求。

  

lastline如何运作?它会产生最大堆还是最小堆?

它在std::vector提供的最大堆(v)。