Re: [閒聊] 每日leetcode已刪文

看板Marginalman作者 (dont)時間1年前 (2024/07/23 09:21), 編輯推噓1(100)
留言1則, 1人參與, 1年前最新討論串548/1548 (看更多)
1636. Sort Array by Increasing Frequency ## 思路 用Counter計算num出現次數, 再用(cnt, -num) 做排序 ## Complexity Time: O(N logN) Space: O(N) ## Code Counter + Heap ```python class Solution: def frequencySort(self, nums: List[int]) -> List[int]: counter = Counter(nums) arr = [(cnt, -num) for num, cnt in counter.items()] heapq.heapify(arr) ans = [] while arr: cnt, num = heapq.heappop(arr) ans += [-num] * cnt return ans ``` Counter + Sorted ```python class Solution: def frequencySort(self, nums: List[int]) -> List[int]: counter = Counter(nums) return sorted(nums, key=lambda x: (counter[x], -x)) ``` -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.35.11.142 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1721697662.A.185.html

07/23 09:22, 1年前 , 1F
剩我寫超過3行 哇哇嗚嗚嗚
07/23 09:22, 1F
文章代碼(AID): #1cdmL-65 (Marginalman)
討論串 (同標題文章)
文章代碼(AID): #1cdmL-65 (Marginalman)