sort用的什么排序算法_lambda表达式有什么组成

sort用的什么排序算法_lambda表达式有什么组成sort()与拉姆达表达式的结合#include<iostream>#include<string>#include<vector>#include<ctime>#include<map>#include<utility>#include<algorithm>usingstd::…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

sort()与拉姆达表达式的结合

#include <iostream>
#include <string>
#include <vector>
#include <ctime>
#include <map>
#include <utility>
#include <algorithm>


using std::cout;
using std::endl;
using std::string;
using std::vector;
using std::map;
using std::sort;
struct Car{ 
   int id,start,from,to;};

int main()
{ 
   
    clock_t startTime=0,endTime=0;
    startTime=clock();
    map<int,int> MapRoot;
    MapRoot[1]=1314520;
    cout << MapRoot[1] <<endl;
    string first="Test",last=" is ok";
    auto PairTest=make_pair(first,last);
    cout << PairTest.first<< PairTest.second<<endl;

    vector<Car> c(1,{ 
   2010,13,20,300});
    c.push_back({ 
   2011,12,24,400});
    c.push_back({ 
   2014,5,23,300});
    c.push_back({ 
   1994,9,22,210});
    c.push_back({ 
   1995,15,26,100});
    int testA[]={ 
   -2,100,20,111,-4,-2,1111};
    int SizeA=sizeof(testA)/sizeof(int);

    cout<<"排序前:"<<endl;
    for (auto i:c)
    { 
   
        cout<<i.id<<" "<<i.start<<" "<<i.from<<" "<<i.to<<" "<<" | ";
    }cout<<endl;

    //降序
    sort(c.begin(),c.end(),[](Car &a,Car &b){ 
   return a.start>b.start;});
// //升序
// sort(c.begin(),c.end(),[](Car &a,Car &b){return a.start<b.start;});
// //逆序
// sort(c.begin(),c.end(),[](Car &a,Car &b){return 1;});
// //正序
// sort(c.begin(),c.end(),[](Car &a,Car &b){return 0;});

    cout<<"排序后:"<<endl;
    for (auto i:c)
    { 
   
        cout<<i.id<<" "<<i.start<<" "<<i.from<<" "<<i.to<<" "<<" | ";
    }cout<<endl;


    endTime=clock();
    cout << "Run Time=" << (double)(endTime-startTime)<< "ms" << endl;
    return 0;
}

运行结果

在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/191776.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 最长递增子序列(LIS)[通俗易懂]

    最长递增子序列(LIS)[通俗易懂]①dp[i]表示以i为结尾的最长子序列长度②dp[i]表示长度为i的最长递增子序列末尾的数

    2022年4月27日
    57
  • 2019前端技术栈梳理

    2019前端技术栈梳理首先 Mark 住值得参考的资料一个关于前端 后端和运维 roadmap 的网站 2016 年前端技术观察 2019 前端技术栈参考图图中关于前端技术栈主要分为三个阶段 1 前端基本功 HTML CSS JavaScript2 前端模块化 工具化 3 前端的深入学习比熊很赞同曹刘阳老师在 2016 年前端技术观察里提到的学好前端自己领域的知识 专一门 再去扩展其它领域知识 近几年前端技术更

    2025年8月30日
    3
  • 服务器机房排风系统图,机房新风系统和排风系统的方案设计方法-20210628031546.pdf-原创力文档…

    服务器机房排风系统图,机房新风系统和排风系统的方案设计方法-20210628031546.pdf-原创力文档…______________________________________________________________________________________________________________新风系统的方案设计方法:设计方案时,即便再简单的方案,我们也应该先做方案、再扒图纸、作出预算的程序,这样我们就不会丢项、报错。复杂的项目,应该编制联系人表格;方便现场沟通…

    2022年5月22日
    54
  • Ubuntu命令卸载软件「建议收藏」

    Ubuntu命令卸载软件「建议收藏」1.打开一个终端,输入dpkg–list,按下Enter键,终端输出以下内容,显示的是你电脑上安装的所有软件。2.在终端中找到你需要卸载的软件的名称,列表是按照首字母排序的。3.在终端上输入命令sudoapt-get–purgeremove包名(–purge是可选项,写上这个属性是将软件及其配置文件一并删除,如不需要删除配置文件,可执行sudoapt-getr…

    2022年5月30日
    38
  • 华三路由交换配置命令_h3c路由器配置命令都有哪些 h3c路由器配置命令大全【详解】…[通俗易懂]

    华三路由交换配置命令_h3c路由器配置命令都有哪些 h3c路由器配置命令大全【详解】…[通俗易懂]对于一般的家庭路由器而言,我们是不需要对他进行配置的。因为家庭路由器这一种小型路由器一般都已经了确定的指令去执行。但是对于一些大型路由器而言,配置命令是非常重要的。正是因为有了配置命令的存在,才能够使大型路由器实行大规模的命令执行。那么接下来,小编就来给大家以H3C路由器为例子,讲讲大型路由器的一些常用基本配置命令吧。快捷键Ctrl+A,将光标移动到当前行的开头Ctrl+B,将光标向左移动一个…

    2022年10月17日
    3
  • 分布式文件存储选型比较[通俗易懂]

    分布式文件存储选型比较[通俗易懂]一、分布式文件存储的来源在这个数据爆炸的时代,产生的数据量不断地在攀升,从GB,TB,PB,ZB.挖掘其中数据的价值也是企业在不断地追求的终极目标。但是要想对海量的数据进行挖掘,首先要考虑的就是海量数据的存储问题,比如Tb量级的数据。谈到数据的存储,则不得不说的是磁盘的数据读写速度问题。早在上个世纪90年代初期,普通硬盘的可以存储的容量大概是1G左右,硬盘的读取速度大概为4.4MB/s.读取一张硬盘大概需要5分钟时间,但是如今硬盘的容量都在1TB左右了,相比扩展了近千倍。但是硬盘的读取速度大概是10

    2022年6月10日
    59

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号