
算法笔记01--基础排序
发布日期:2021-05-08 15:59:51
浏览次数:21
分类:精选文章
本文共 936 字,大约阅读时间需要 3 分钟。
1.sort函数
sort函数用法:sort(起始地址,结束地址,排序规则),排序规则可以自定义。 基本用法:int array[]={ 1,6,2,3,19,23,17}; sort(array,array+6); for(int i=0;i
2.自定义排序
当需要自定义排序规则时,需提前定义比较函数,现在假设创建一个学生的结构体,结构体变量有成绩与学号。现在将学生信息按照成绩从高到低排序,当成绩相同时,学号较小的优先,比较函数如下:struct Student{ int number; int score;};Student arr[100];bool compare(Student x,Student y){ if(x.score==y.score){ return x.numbery.score; }}
排序如下:
int n; cin>>n; for(int i=0;i>arr[i].number>>arr[i].score; } sort(arr,arr+n,compare); for(int i=0;i
自定义排序习题:
输入10个整数,彼此以空格分隔。重新排序后输出,要求:1.先输出其中的奇数,并按从大到小排列;2.然后输出其中的偶数,并按从小到大排列。 根据题意需要自定义排序规则,排序规则如下:bool Compare(int x,int y){ if(x%2==1&&y%2==1){ return x>y; } else if(x%2==0&&y%2==0){ return x
对于自定义排序规则可以这么理解,在Compare(int x,int y)中两个参数的顺序代表了原始数组中x,y的相对位置关系–x在y之前。然后通过Compare函数中比较后返回这种关系是否为true。
举例,如第一个判断,当x,y均为奇数时,原始序列为x在y之前。奇数排序要求是从大到小,当x>y时为真,原始序列成立,当x<y时为假,原始序列不成立,x与y交换位置。 再例如第三个判断,当x为奇数,y为偶数时,原始序列x在y之前,排序成立,返回true。发表评论
最新留言
关注你微信了!
[***.104.42.241]2025年04月08日 20时38分48秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
从零开始学安全(三十四)●百度杯 ctf比赛 九月场 sqli
2021-05-09
3389连接痕迹清除
2021-05-09
发生系统错误 6118
2021-05-09
阿里巴巴Json工具-Fastjson教程
2021-05-09
Spring Cloud Gateway - 快速开始
2021-05-09
Spring Security 实战干货:理解AuthenticationManager
2021-05-09
Java对象转JSON时如何动态的增删改查属性
2021-05-09
Python 面向对象进阶
2021-05-09
Linux常用统计命令之wc
2021-05-09
Git安装及使用以及连接GitHub方法详解
2021-05-09
docker容器与虚拟机的区别
2021-05-09
shell脚本里使用echo输出颜色
2021-05-09
Python2跟Python3的区别
2021-05-09
并发编程——IO模型详解
2021-05-09
Java之封装,继承,多态
2021-05-09
wait()与notify()
2021-05-09
使用js打印时去除页眉页脚
2021-05-09
Spring security OAuth2.0认证授权学习第二天(基础概念-RBAC)
2021-05-09
ORA-00904: "FILED_TYPE": 标识符无效
2021-05-09
数据仓库系列之维度建模
2021-05-09