日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

78. Leetcode 264. 丑数 II (堆-技巧二-多路归并)

發(fā)布時間:2025/4/5 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 78. Leetcode 264. 丑数 II (堆-技巧二-多路归并) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
給你一個整數(shù) n ,請你找出并返回第 n 個 丑數(shù) 。丑數(shù) 就是只包含質(zhì)因數(shù)?2、3 和/或?5?的正整數(shù)。示例 1:輸入:n = 10 輸出:12 解釋:[1, 2, 3, 4, 5, 6, 8, 9, 10, 12] 是由前 10 個丑數(shù)組成的序列。 示例 2:輸入:n = 1 輸出:1 解釋:1 通常被視為丑數(shù)。import heapqclass Solution:def nthUglyNumber(self, n: int) -> int:# 1. 起始最先將最小丑數(shù)1放入隊列# 2. 每次從隊列取出最小值x, 然后將x所對應(yīng)的丑數(shù)2x,3x,5x進(jìn)入隊列# 3. 對 2 循環(huán)多次,第n次出隊的值就是答案# 為了防止同一丑數(shù)多次進(jìn)隊,需要使用數(shù)據(jù)結(jié)構(gòu)set來記錄入隊列的丑數(shù)nums = [2,3,5]explored = {1}pq = [1]for i in range(1, n + 1):x = heapq.heappop(pq)if i == n:return xfor num in nums:t = num * xif t not in explored:explored.add(t)heapq.heappush(pq,t)return -1

總結(jié)

以上是生活随笔為你收集整理的78. Leetcode 264. 丑数 II (堆-技巧二-多路归并)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。