• sort自定义排序实现


    1、sort是#include标准库中的函数,sort函数有三个参数,按顺序为:
    (1)、数组的起始地址;
    (2)、数组的结束地址;
    (3)、排序方法;
    sort(start, end, complare);
    使用时,sort(start, end);complare默认从小到大。
    2、实现自定义排序:
    eg:

        struct stu{
          int id;
          string name;
          int Chinese;
          int Math;``
          int English;
        };
    

    实现按语文成绩大到小排序,如果语文成绩一样则按数学成绩大到小排序,如果数学成绩也一样则按英语成绩大到小排序,如果语数英成绩都一样则按id从小到大排序。
    假设当前有一个存放学生数据的数组vector studentsVec,实现如下:

      sort(studentsVec.begin(), students.end(), ([](const stu& A, const stu& B)-> bool <br/>
      {
        if(A.Chinese == B.Chinese)
        {
          if(A.Math == B.Math)
          {
            if(A.English == B.English)
            {
               return A.id < B.id;
            }
            else
            {
               return A.Englisg > B.English;
            }
          }
          else
          {
            return A.Math > B.Math;
          }
        }
        else
        {
          return A.Chinese > B.Chinese;
        }
      }
      ));
    
  • 相关阅读:
    专业英语阅读(二)
    专业英语阅读(一)
    高精度运算
    高精度运算——加减乘除阶乘
    python常见编程面试题汇总
    python线程
    反射
    单例模式
    生成器、迭代器
    python装饰器
  • 原文地址:https://www.cnblogs.com/izzwhf/p/14676972.html
Copyright © 2020-2023  润新知