[LeetCode]#2418. Sort the People

Fatboy Slim
Dec 2, 2022

--

Environment: Python 3.8

Key technique: zip, sorted

You are given an array of strings names, and an array heights that consists of distinct positive integers. Both arrays are of length n.

For each index i, names[i] and heights[i] denote the name and height of the ith person.

Return names sorted in descending order by the people's heights.

Example 1:

Input: names = ["Mary","John","Emma"], heights = [180,165,170]
Output: ["Mary","Emma","John"]
Explanation: Mary is the tallest, followed by Emma and John.

Analysis:

  1. Use zip as pair [(180, ‘Mary’), (170, ‘Emma’), (165, ‘John’)].
  2. sorted it by using reverse type.

Solution:

class Solution:
def sortPeople(self, names, heights):
sort_h=sorted(list(zip(heights,names)),reverse=True)
ans=[]
for i in range(len(sort_h)):
ans.append(sort_h[i][1])
return ans

Submissions:

--

--