78. Leetcode 264. 丑数 II (堆-技巧二-多路归并)
给你一个整数 n ,请你找出并返回第 n 个 丑数 。丑数 就是只包含质因数 2、3 和/或 5 的正整数。示例 1:输入:n = 10
输出:12
解释:[1, 2, 3, 4, 5, 6, 8, 9, 10, 12] 是由前 10 个丑数组成的序列。
示例 2:输入:n = 1
输出:1
解释:1 通常被视为丑数。import heapqclass Solution:def nthUglyNumber(self, n: int) -> int:# 1. 起始最先将最小丑数1放入队列# 2. 每次从队列取出最小值x, 然后将x所对应的丑数2x,3x,5x进入队列# 3. 对 2 循环多次,第n次出队的值就是答案# 为了防止同一丑数多次进队,需要使用数据结构set来记录入队列的丑数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
78. Leetcode 264. 丑数 II (堆-技巧二-多路归并)相关推荐
- LeetCode 264. 丑数 II
264. 丑数 II Ideas 竟然没想到用小根堆,白学了,再把小根堆抄一遍. Code Python class Solution:def nthUglyNumber(self, n: int) ...
- leetcode - 264. 丑数 II
264. 丑数 II -------------------------------------------- 编写一个程序,找出第 n 个丑数. 丑数就是只包含质因数 2, 3, 5 的正整数. 示 ...
- 77. Leetcode 1439. 有序矩阵中的第 k 个最小数组和 (堆-技巧二-多路归并)
技巧二 - 多路归并其实这个技巧,叫做多指针优化可能会更合适,只不过这个名字实在太过朴素且容易和双指 针什么的混淆,因此我给 ta 起了个别致的名字 - 多路归并.多路体现在:有多条候选路线.代码上, ...
- leetcode 264. 丑数 II(堆)
给你一个整数 n ,请你找出并返回第 n 个 丑数 . 丑数 就是只包含质因数 2.3 和/或 5 的正整数. 示例 1: 输入:n = 10 输出:12 解释:[1, 2, 3, 4, 5, 6, ...
- Leetcode 264. 丑数 II 解题思路及C++实现
方法一:暴力解法 解题思路: 直接从整数1开始,不断递增,判断该数字是否为丑数(专门写一个判断是否为丑数的函数),当遇到一个丑数,则计数值加1,直至遇到n个丑数为止. 当n很大时,这种暴力解法会遇到 ...
- 86. Leetcode 264. 丑数 II (动态规划-基础题)
给你一个整数 n ,请你找出并返回第 n 个 丑数 .丑数 就是只包含质因数 2.3 和/或 5 的正整数.示例 1:输入:n = 10 输出:12 解释:[1, 2, 3, 4, 5, 6, 8, ...
- LeetCode 264.丑数 II(动态规划)
题目描述 编写一个程序,找出第 n 个丑数. 丑数就是只包含质因数 2, 3, 5 的正整数. 示例: 输入: n = 10 输出: 12 解释: 1, 2, 3, 4, 5, 6, 8, 9, 10 ...
- LeetCode 263. 丑数 264. 丑数 II(DP)
文章目录 1. LeetCode 263. 丑数 解题 2. LeetCode 264. 丑数 II DP解题 1. LeetCode 263. 丑数 编写一个程序判断给定的数是否为丑数. 丑数就是只 ...
- 693. 交替位二进制数 / 227. 基本计算器 II / 264. 丑数 II
693. 交替位二进制数[简单题][每日一题] 思路:[位运算] 排除特殊情况n=1,此时return true. 将n转为二进制字符串,依次将相邻两位数字进行异或运算. 异或运算的结果为flag,如 ...
最新文章
- 建设网站套用模板优化难吗?
- tableau可视化数据分析60讲(十二)-过滤器详解
- 前端小白也能快速学会的博客园博客美化全攻略
- 「前端组件化」该怎么理解?
- 关于如何清除某个特定网站的缓存---基于Chrome浏览器
- POJ 3683 Priest John's Busiest Day(2-ST)
- 网盘是否能做一只安全的企业信息快递手
- 一文讲清,MySQL事务隔离级别
- axure7 地址选择_Axure教程:省市县三级联动选择(全国省市区数据)
- 深海迷航坐标传送代码_深海迷航秘籍代码大全 美丽水世界秘籍代码使用教程...
- java求一元二次方程:ax2+bx+c=0的根
- C++complex复数类
- 计算机无法装补丁,Win7系统无法安装补丁提示缺少Service Pack系统组件的原因及解决方法...
- [UE4]传送门:场景切换
- 王者荣耀与英雄联盟:如何解决玩家骂人的问题?
- 在LibreOffice 中启用录制宏的功能
- sysbench官网
- qq聊天页面设置html,如何设置qq聊天窗口消息显示方式
- 三星Galaxy S5手机在全球125个国家同步上市
- 2022-2027年中国稀有金属矿产行业发展监测及投资战略研究报告