跳到正文
信奥逐课

第 180 课

多关键字排序

🔵 基础 约 7 分钟

一句话理解

多关键字:先比最重要的键,相同再比下一键。

为什么要学

成绩排名、坐标排序。

讲解

if (a.x != b.x) return a.x < b.x; return a.y < b.y;

不要写成 return a.x < b.x || a.y < b.y,那是错的。

例子

bool cmp(P a, P b) {
    if (a.x != b.x) return a.x < b.x;
    return a.y < b.y;
}

x 不同比 x;x 相同比 y。

常见错误

练习 做完再看下一课

return a.x < b.x || a.y < b.y 是正确的二维排序比较。

在线练习 C++ 在浏览器里编译,代码不会上传

Ctrl / ⌘ + Enter 运行 · Tab 缩进

输出
 

进度保存在本机浏览器里。

左右方向键也可翻课