///排序案例
//按照年龄进行升序,年龄相同按照身高降序
#include<iostream>
#include<string>
#include<list>
using namespace std;
class person {

public:
    int age;
    string name;
    int height;
    person(string name, int age, int height) { this->name.assign(name); this->age = age; this->height = height; }
    void print() {
        cout << "姓名" + this->name << " 年龄:" <<this->age<<"  身高:"<<this->height<<endl;
}

};
bool mycompare(person& p1, person& p2) {
    if (p1.age == p2.age)
        return  p1.height > p2.height;
    return p1.age < p2.age;
}
void print(list<person>& h) {
    for (list<person>::iterator it = h.begin(); it != h.end(); it++) {
        (*it).print();
    }
}
int main() {
    list<person> h;
    person p1("李四", 19, 176);
    person p2("王五", 34, 190);
    person p3("李龙", 19, 200);
    person p4("赵谦", 19, 160);
    
    h.push_back(p1);
    h.push_back(p2);
    h.push_back(p3);
    h.push_back(p4);
    print(h);
    h.sort(mycompare);
    cout << "排序后" << endl;
    print(h);
    return 0;
}

//排序案例//按照年龄进行升序,年龄相同按照身高降序相关推荐

  1. 大数据学习笔记26:MR案例——双重排序(先按月份升序,再按利润降序)

    文章目录 一.提出任务 二.准备工作 1.启动hadoop服务 2.上传数据文件到HDFS 3.创建Maven项目DoubleSort 4.修改pom.xml文件,添加依赖 5.创建log4j.pro ...

  2. 堆排序--采用快速排序(利用大堆实现升序,小堆实现降序)

    对堆进行排序,利用大堆实现升序,小堆实现降序.例如升序的实现,将较大数据存放在最后面,依次往前存放数据.具体为交换第一个元素和最后一个元素,再将不包含最后一个元素的堆进行下调,使堆保持大堆,将最大数据 ...

  3. //输入学生人数,挨个输入姓名,身高,年龄,求平均年龄,然后按身高降序排列输出...

    13:52:49 N U L L 2014/12/19 13:52:49 using System; using System.Collections; using System.Collection ...

  4. C++list容器实现按照年龄升序排列,年龄相同按照身高降序排列,年龄身高相同对体重升序排列

    感谢黑马先生! //对人的年龄进行升序排列,年龄相同对身高进行降序排列,年龄身高相同对体重升序排列 #include <iostream> #include <list> #i ...

  5. 【MySQL】九、数据排序(升序 order by ... asc,降序 desc),sql语句的执行顺序

    文章目录 1. 语法 2. 案例 (1)按照工资升序,找出员工名和薪资. (2)按照工资降序,找出员工名和薪资. (3)按照工资的降序排列,当工资相同的时候在按照名字的升序排列. (4)找出员工岗位是 ...

  6. set list词频排序java_Hadoop WordCount改进实现正确识别单词以及词频降序排序 | 学步园...

    参考资料: http://radarradar.javaeye.com/blog/289257 http://blog.chinaunix.net/u3/99156/showart_2157576.h ...

  7. Excel怎样按行排序,干货经验!如何将行数据进行降序排序详细讲解

    我们在使用excel表格软件通常记录大部分数据信息需要排序进行查看,这样会更加清晰明了的参考数据,那么我们想要进行行排序应该怎样做呢?下面就来一起看看如何进行对行数据的降序排序. 首先我们打开需要编辑 ...

  8. Excel之利用Excel的排序功能可以让表格整体按照某一列降序排列而排列(一)

    https://zhidao.baidu.com/question/1110326141263779579.html

  9. AngularJS table 按照表头字段排序功能(升序和降序)

    一.表格按照表头排序 1 <!doctype html> 2 <html ng-app="a3_4"> 3 <head> 4 <title ...

最新文章

  1. “应付”大学作业,我花3小时写了一个“文本转手写”神器
  2. JavaScript修饰器-让代码更干净
  3. gridview、datalist、repeater、FormView、DetailsView的区别详解
  4. 用匈牙利算法求二分图的最大匹配
  5. java fx消息通知,Java的FX 2警报声
  6. Java 单例模式探讨
  7. python算法与数据结构-插入排序算法
  8. Apache Kylin VS Apache Doris
  9. win10系统javac不是内部或外部命令,也不是可运行的程序 或批处理文件。
  10. bash脚本 文件_如何使用Bash脚本来管理从AWS S3存储桶下载和查看文件
  11. ecshop 手机版的php代码在哪里,PHP 在ecshop上集成 手机网页支付_php
  12. System.IO命名空间
  13. 《华为交换机学习指南》学习笔记·二
  14. 怎样使用css动画animation实现静态箭头图片上下摆动
  15. 40 个科研学术网站,赶紧来收藏一波!
  16. 天马行空的刷脸支付方式将是未来
  17. android客户端同php服务端进行XML/JSON通信
  18. 我的数模之旅(开始)
  19. bat批处理删除日志文件
  20. jsapi 支付缺少appid ¬ify_url

热门文章

  1. Expect基础使用
  2. Blackberry 10 JAM - 黑莓开发者的新的开始!
  3. 正规黄金白银中的复合头肩顶/底
  4. 一个稳赚的野路子,价值超大
  5. 真实的生活比戏剧更残酷
  6. win + e打开我的电脑
  7. java中接口(interface)详解
  8. 远程连接SQL Server 2005数据库
  9. 【开发日记】Token的使用及Token的构成
  10. 【R语言】实现VAR、SVAR