264. Ugly Number II
problem description
Write a program to find the n-th ugly number.
Ugly numbers are positive numbers whose prime factors only include 2, 3, 5.
Example:
Note:
1 is typically treated as an ugly number. n does not exceed 1690.
algorithm thought
这是ugly number的第二题,这个系列有4题。和第一题直接判断是否为ugly number不同。这里需要求出第几个ugly number。最简单暴力的办法当然是直接循环遍历,符合要求就加一。否则一直往后求。但是这样太慢了。有很多重复操作。之前计算过了4是一个ugly number,在求解8是否为ugly number的时候,还要去求4的情况。这就会有重复计算。
由于ugly number是可以由前面的uglynumebr得到。利用类似步长调用的方法。3个步长分别为2,3,5。每次步长最低的人行动。直到第n个数
code
algorithm analysis
每得到一个数时间复杂度是O(1),题目要求得到第n个数。时间复杂度O(n)
Last updated