博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【leetcode】38. Count and Say
阅读量:6688 次
发布时间:2019-06-25

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

题目如下:

解题思路:本题题目难度是easy,但是题意理解起来的难度是medium。题意大致是n=1时输出字符串1;n=2时,数上次字符串中的数值个数,因为上次字符串有1个1,所以输出11;n=3时,由于上次字符是11,有2个1,所以输出21;n=4时,由于上次字符串是21,有1个2和1个1,所以输出1211。依次类推,写个countAndSay(n)函数返回字符串。看懂了题意其实就很简单了。

代码如下:

class Solution(object):    def recursive(self,n,v):        if n == 0:            return v        v += '#'        newv = ''        count = 1        for i in range(len(v)-1):            if v[i] != v[i+1]:                newv += str(count)                newv += v[i]                count = 1            else:                count += 1        return self.recursive(n-1,newv)    def countAndSay(self, n):        """        :type n: int        :rtype: str        """        if n == 1:            return '1'        return self.recursive(n-1,'1')

 

转载于:https://www.cnblogs.com/seyjs/p/9412204.html

你可能感兴趣的文章
memcache 安装 (windows和linux)
查看>>
浅谈Android应用保护(一):Android应用逆向的基本方法
查看>>
IIFE语法
查看>>
Mysql 架构及优化之-主从复制同步部署
查看>>
【11】把 Elasticsearch 当数据库使:Filter 下钻
查看>>
iOS原生分享—UIActivityViewController
查看>>
创业的N种死法:抵御DDoS攻击花钱致死
查看>>
[TODO]Iterator, foreach, generics and callback in C# and Python
查看>>
苹果弃用 OpenCL 和 OpenGL ,OpenCL 或遭全面淘汰
查看>>
JS '严格模式'
查看>>
chrome扩展调试:background.html如何调试?
查看>>
关于嵌入式安全性的6个要点
查看>>
Hibernate分页
查看>>
Drawable解析4——StateListDrawable和AnimationDrawable
查看>>
如何使用Hanlp加载大字典
查看>>
特斯拉Model 3进化不止 传统车企到底应该学什么? ...
查看>>
1月18日云栖精选夜读 | Euler 今日问世!国内首个工业级的图深度学习开源框架,阿里妈妈造 ...
查看>>
4月云栖社区最新技术活动预告
查看>>
我的JAVA面试经验(3年左右工作经验)
查看>>
(十五)Java springcloud B2B2C o2o多用户商城 springcloud架构-commonservice-sso...
查看>>