【问题标题】:Sorting Structure Array With Two Criteria C++ [closed]使用两个标准 C++ 对结构数组进行排序 [关闭]
【发布时间】:2015-04-23 23:01:25
【问题描述】:

我正试图围绕我的项目中的一个部分。我有一个由常用变量组成的结构数组。 (名字和姓氏、ID、用户名、考试成绩、平均成绩和字母成绩)

我必须按等级排序(这并不难),但看起来我也必须按 ID 号从低到高排序。

有点不知如何继续下去。任何提示将不胜感激!

【问题讨论】:

    标签: c++ arrays sorting structure


    【解决方案1】:

    首先使用std::sort按ID号排序,然后使用std::stable_sort按等级排序。这样,数组将按年级排序,在相同年级的学生中,它将按 ID 排序。

    另一种可能更简单(但不那么酷)的方法是只实现一个比较函数,首先检查成绩,然后检查 ID:

    if (a.grade == b.grade)
      return a.id < b.id;
    return a.grade < b.grade;
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-27
    • 1970-01-01
    • 2013-05-13
    相关资源
    最近更新 更多