在C++种,好多贪婪算法都避免不了排序的步骤,所以我把排序的函数std::sort()写下来,关于更多的sort()函数的内容,可以看这篇文章,讲解的很清楚。

排序

  1. #include <iostream>
  2. #include<vector>
  3. #include<algorithm>
  4. using std::vector;
  5. using std::cout;
  6. using std::endl;
  7. using std::sort;
  8. int main()
  9. {
  10. vector<int> i0 = {3,16};
  11. vector<int> i1 = {2,8};
  12. vector<int> i2 = {1,6};
  13. vector<int> i3 = {7,12};
  14. vector<vector<int>> intervals = {i0, i1, i2, i3};
  15. % 使用lambda函数给排序的规则
  16. sort(intervals.begin(), intervals.end(), [](vector<int> a, vector<int> b){
  17. return a[0] < b[0]; });
  18. for (auto it=intervals.begin(); it!=intervals.end(); ++it)
  19. {
  20. for (auto &i:(*it))
  21. {
  22. cout << i <<',';
  23. }
  24. cout << ' ' << endl;
  25. }
  26. return 0;
  27. }

image.png