网站建设商务通什么意思,wordpress机械行业模板,360建站公司,机关门花网站建设给你一个字符串数组 names #xff0c;和一个由 互不相同 的正整数组成的数组 heights 。两个数组的长度均为 n 。
对于每个下标 i#xff0c;names[i] 和 heights[i] 表示第 i 个人的名字和身高。
请按身高 降序 顺序返回对应的名字数组 names 。
示例 1#xff1a;
输…给你一个字符串数组 names 和一个由 互不相同 的正整数组成的数组 heights 。两个数组的长度均为 n 。
对于每个下标 inames[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:vectorstring sortPeople(vectorstring names, vectorint heights) {mapint, int, greaterint im;int sz heights.size();for (int i 0; i sz; i) {im[heights[i]] i;}vectorstring ans;for (auto heightToIndex : im) {ans.push_back(names[heightToIndex.second]);}return ans;}
};如果有n个人此算法时间复杂度为Onlgn空间复杂度为On。