【问题标题】:C++ - Sort array in descending order not workingC++ - 按降序排序数组不起作用
【发布时间】:2018-11-25 04:03:27
【问题描述】:
int array[6] = {5, 10, 2, 5, 4, 4}
std::sort(array, array + (sizeof array / sizeof array[0]), std::greater<int>());

我正在尝试按降序对上述数组进行排序,但是当我对其运行排序函数时,我得到以下结果:

{10, 5, 2, 5, 4, 4}

有什么想法吗?

编辑:问题出在我周围的代码上。这里发布的代码实际上是正确的..对不起。

【问题讨论】:

标签: c++ sorting


【解决方案1】:

基于reference 的示例,您所拥有的应该可以工作:

#include <iostream>     // std::cout
#include <algorithm>    // std::sort
#include <vector>       // std::vector

int main (void) {
  int array[6] = {5, 10, 2, 5, 4, 4};
  std::sort(array, array + (sizeof array / sizeof array[0]), std::greater<int>());

  for (int i = 0; i < 6; ++i)
    std::cout << array[i] << " ";
  std::cout << '\n';

  return 0;
}

输出:

10 5 5 4 4 2

如您所见,这与您的代码相同。在 Live Demo 中亲自查看。

【讨论】:

    猜你喜欢
    • 2022-01-05
    • 1970-01-01
    • 1970-01-01
    • 2014-05-06
    • 1970-01-01
    • 1970-01-01
    • 2021-08-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多