zoukankan      html  css  js  c++  java
  • Leetcode刷题记(12)—报数

    题目要求:

    报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数。其前五项如下:

    1. 1
    2. 11
    3. 21
    4. 1211
    5. 111221

    1 被读作  "one 1"  ("一个一") , 即 11。
    11 被读作 "two 1s" ("两个一"), 即 21。
    21 被读作 "one 2",  "one 1" ("一个二" ,  "一个一") , 即 1211。

    给定一个正整数 n(1 ≤ n ≤ 30),输出报数序列的第 n 项。

    题解:

    1.读懂题意!!!读懂题后写出来几个数字没有发现什么规律,总觉得要用递归循环,但不知道怎么写,就刚开始用最笨的方法写出了30个数,时间复杂度为O(1),但是真心晕,再多一点数就自闭了....

    2.后来查看了一下大家的评论,用两层循环即可:外层循环为输入的整数n,因为下一个数字依赖于上一个数字,第二层循环对上一个数字进行遍历,统计每一个数字出现的次数,然后插入到字符串中,这种方法虽然时间复杂度比暴力法高,但看起来舒爽多了:

  • 相关阅读:
    hibernate一对多查询
    hibernate关联关系查询
    Cookie&&session
    JSP&&EL&&JSTL
    servlet下的request&&response
    servlet
    mysql命令
    html小结
    RabbitMQ初步学习和使用
    爬虫简单案例
  • 原文地址:https://www.cnblogs.com/wangjm63/p/11510695.html
Copyright © 2011-2022 走看看