| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 
 | // is_heap example
#include <iostream>     // std::cout
#include <algorithm>    // std::is_heap_until, std::sort, std::reverse
#include <vector>       // std::vector
int main () {
  std::vector<int> foo {2,6,9,3,8,4,5,1,7};
  std::sort(foo.begin(),foo.end());
  std::reverse(foo.begin(),foo.end());
  auto last = std::is_heap_until (foo.begin(),foo.end());
  std::cout << "The " << (last-foo.begin()) << " first elements are a valid heap:";
  for (auto it=foo.begin(); it!=last; ++it)
    std::cout << ' ' << *it;
  std::cout << '\n';
  return 0;
}
 |