当前位置: 首页 > news >正文

LeetCode 2418. 按身高排序

给你一个字符串数组 names ,和一个由 互不相同 的正整数组成的数组 heights 。两个数组的长度均为 n 。

对于每个下标 i,names[i] 和 heights[i] 表示第 i 个人的名字和身高。

请按身高 降序 顺序返回对应的名字数组 names 。

示例 1:

输入:names = [“Mary”,“John”,“Emma”], heights = [180,165,170]
输出:[“Mary”,“Emma”,“John”]
解释:Mary 最高,接着是 Emma 和 John 。

提示:

n == names.length == heights.length
1 <= n <= 103
1 <= names[i].length <= 20
1 <= heights[i] <= 105
names[i] 由大小写英文字母组成
heights 中的所有值互不相同

直接模拟即可:

class Solution {
public:vector<string> sortPeople(vector<string>& names, vector<int>& heights) {map<int, int, greater<int>> im;int sz = heights.size();for (int i = 0; i < sz; ++i) {im[heights[i]] = i;}vector<string> ans;for (auto &heightToIndex : im) {ans.push_back(names[heightToIndex.second]);}return ans;}
};

如果有n个人,此算法时间复杂度为O(nlgn),空间复杂度为O(n)。

http://www.lryc.cn/news/12263.html

相关文章:

  • 一文了解Hotspot虚拟机下JAVA对象从创建到回收的生命周期
  • 【Java基础】Java对象创建的几种方式
  • 社保缴费满15年就可以不缴了?6个很多人最关心的问题权威解答来了
  • 关于HDFS
  • C++入门:类 对象
  • Python生日系统
  • < CSDN周赛解析:第 28 期 >
  • 【题外话】如何拯救小米11Pro这款工业垃圾
  • Python中有哪些常用操作?这20个你都会吗
  • 【LeetCode】剑指 Offer(4)
  • 庄懂的TA笔记(十二)<>
  • 学分绩点(2023寒假每日一题 5)
  • Framework学习之旅:Zygote进程
  • HTTP基础知识
  • Delphi 10.4.2使用传统代码提示方案(auto complete)(转)
  • 存储类别、链接与内存管理(三)
  • Java:Linux(CentOS)安装、配置及相关命令
  • Linux 操作系统原理 — 多任务优先级调度策略
  • 链表学习之找到两个链表相交的第一个节点
  • 【Kubernetes】【十一】Pod详解 Pod的生命周期
  • Connext DDS录制服务 Recording Service(1)
  • vTESTstudio - VT System CAPL Functions - VT2004(续2)
  • 每天一个linux命令---awk
  • Open3D 点云旋转之轴角式(Python版本)
  • Error: Timeout trying to fetch resolutions from npm
  • Python基础3
  • 高可用集群(HAC)
  • python基于django微信小程序的适老化老人健康预警小程序
  • 基于微信小程序图书馆管理系统
  • 将镭神C32激光雷达的PointXYZ数据转化为PointXYZIR格式 - 附代码