如何使用数据结构解决以下问题?
3^i * 5^J * 7^k 其中 i,j,k >=0。找到这个系列中第 10, 000 个最小的数字。
我通过以下方式使用集合解决了它,我觉得这不是一个有效的解决方案:
- 初始集是 (1)
- 将集合的每个元素乘以数字 3,5 和 7 以获得下一个集合。
- 与前一组联合。
- 如果集合的大小大于或等于10,000,则停止乘法过程并按升序对集合进行排序。
- 集合的第 10,000 个元素将是第 10,000 个最小的数字。
有没有其他数据结构可以更有效地解决这个问题?
如何使用数据结构解决以下问题?
3^i * 5^J * 7^k 其中 i,j,k >=0。找到这个系列中第 10, 000 个最小的数字。
我通过以下方式使用集合解决了它,我觉得这不是一个有效的解决方案:
有没有其他数据结构可以更有效地解决这个问题?