博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode-313-Super Ugly Number
阅读量:6324 次
发布时间:2019-06-22

本文共 619 字,大约阅读时间需要 2 分钟。

  1. 题意:找出以某些数为公因数的 递增排序的第n个数
  2. 条件:indexes 维护了 primes的元素的相乘因素(uglies)的index。
  3. 思路:每次从 primes的遍历*中,找出最小的一个ugly,添加到uglies中去,然后将 indexes维护的primes的相乘对象的索引表中,找出这个,+1.
  4. 应用: 每次只变动一个数的思想。 相乘时候,遍历primes是循环进行的。 相乘的对象 是 primes的各个元素,也是uglies中的所有元素。
    由于是最小值,所以每次保留最小的。 每次找出 得到最小值的prime的index,+1,方便下次迭代。
    问题转化, primeprime==》多次迭代,变成 uglyprime, 处理对象变了。
    每个prime每次*的对象,有可能反复是同一个数,所以用indexes记录走到的位置。避免重复。
    不重复的思想:找出重复计算的地方,找出不重复计算的方法,用极值约束,index加以记录。
  5. 没有找到思路原因: 没有将问题建模,抽象为 prime*ugly 的迭代过程+每次一个最小值的比较。 索引记录prime的迭代位置。
class Solution:    def nthSuperUglyNumber(self, n, primes):        uglies=[1]        indexes=[0]*len(primes)        while len(uglies)

转载地址:http://rvmaa.baihongyu.com/

你可能感兴趣的文章
如何拆笔记本键盘(组图)
查看>>
lua install
查看>>
海量数据处理 算法总结
查看>>
mysql性能参数查询
查看>>
VirtualBox运行报错Unable to load R3 module
查看>>
EBS Form个性化的工作原理
查看>>
SpringSecurity3整合CAS实现单点登录
查看>>
更新日期 2015年8月5日 - Citrix桌面虚拟化平台交付推荐版本及相关hotfix
查看>>
人工智能教程014:创建卷积神经网络进阶(5)
查看>>
oracle 分析函数
查看>>
idea 项目多开变通的解决方案
查看>>
游戏中发送道具奖励的概率算法
查看>>
Speed Tree
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
自增自减
查看>>
Oracle 10g bigfile表空间、smallfile 表空间
查看>>
List、Set、数组之间的转换
查看>>
开发经常犯的错误之→【join表连接关联查询 】
查看>>
我的友情链接
查看>>