当前位置: 首页 > article >正文

力扣264. 丑数 II

给你一个整数 n ,请你找出并返回第 n 个 丑数 。丑数 就是质因子只包含 2、3 和 5 的正整数。

//用一个数组来保存第1到第n个丑数
//一个丑数必须是乘以较小的丑数的 2、3 或 5来得到。
//使用三路合并方法:L2、L3 和 L5三个指针遍历2、3、5倍的丑数序列。
//假设你有第 k 个丑数,那么 第k+1 个必须是 Min(L1 * 2, L2 * 3, L3 * 5)。
//1 通常被视为丑数
class Solution {
public:
    int nthUglyNumber(int n) {
        vector<int> ans;
        ans.push_back(1);
        int i = 0, j = 0, k = 0;
        for (int a = 1; a < n; a++) {
            int u1 = 2 * ans[i];
            int u2 = 3 * ans[j];
            int u3 = 5 * ans[k];
            ans.push_back(min(u1, min(u2, u3)));
            if (ans[a] == u1)
                i++;
            if (ans[a] == u2)
                j++;
            if (ans[a] == u3)
                k++;
        }
        return ans[n - 1];
    }
};

时间复杂度:O(n)
空间复杂度:O(n)


http://www.kler.cn/a/503058.html

相关文章:

  • 长安“战疫”网络安全公益赛的一些随想
  • 源码编译安装httpd 2.4,提供系统服务管理脚本并测试(两种方法实现)
  • 支持Google Analytics快捷添加的CMS:费用与部署形式详解
  • ClickHouse大数据准实时更新
  • 【数据可视化-12】数据分析岗位招聘分析
  • pandas与sql对应关系【帮助sql使用者快速上手pandas】
  • 后端接口获取的对象包含图片,渲染后端图片,拼接地址渲染,循环列表,vue+uniapp
  • Visual Studio Code (VSCode)为当前项目设置保存时自动格式化
  • 禅道 ip 地址变换后的修改
  • 有限元分析学习——Anasys Workbanch第一阶段笔记(11)横梁中点挠度仿真结果与计算结果对比
  • 罗德与施瓦茨ZN-Z135,26.5G经济型网络分析仪校准套件
  • CSS语言的语法
  • iOS - runtime总结
  • Github 2025-01-13 开源项目周报 Top15
  • 【图像去噪】论文精读:High-Quality Self-Supervised Deep Image Denoising(HQ-SSL)
  • MyBatis 性能优化
  • c++自定义String
  • 【Pytorch实用教程】PyTorch 中如何输出模型参数:全面指南
  • 战略与规划方法——深入解析波士顿矩阵(BCG Matrix):分析产品组合的关键工具
  • Python----Python高级(函数基础,形参和实参,参数传递,全局变量和局部变量,匿名函数,递归函数,eval()函数,LEGB规则)
  • python中bug修复案例-----数据类型不匹配错误导致的bug修复
  • 如何在应用或系统中正确解析和渲染淘宝商品详情API接口返回的HTML内容?
  • Chromium 132 编译指南 Windows 篇 - 生成构建文件 (六)
  • Portainer.io安装并配置Docker远程访问及CA证书
  • 腾讯云AI代码助手编程挑战赛-百事一点通
  • LabVIEW光流跟踪算法