leetcode9
来源:互联网 发布:网络电视怎样调出频道 编辑:程序博客网 时间:2024/05/31 11:04
Count and Say
这个题目的意思是n=1时输出字符串1;n=2时,数上次字符串中的数值个数,因为上次字符串有1个1,所以输出11;n=3时,由于上次字符是11,有2个1,所以输出21;n=4时,由于上次字符串是21,有1个2和1个1,所以输出1211。
#coding=utf-8class Solution(object): def countAndSay(self, n): """ :type n: int :rtype: str """ if n==1: return "1" if n==2: return "11" s=self.countAndSay(n-1) result="" j=0 for i in range(1,len(s)): if s[i]!=s[i-1]: result+=str(len(s[j:i])) result+=s[i-1] j=i if i==len(s)-1: result+=str(len(s)-j) result+=s[i] return result
直接用递归就可以了,自己写递归不是太熟练,要好好练习一下。
Combination Sum
用递归,path是一个解。
#coding=utf-8class Solution(object): def combinationSum(self, candidates, target): """ :type candidates: List[int] :type target: int :rtype: List[List[int]] """ res=[] self.dfs(candidates,target,0,[],res) return res def dfs(self,nums,target,index,path,res): if target<0: return if target==0: res.append(path) return for i in range(index,len(nums)): self.dfs(nums,target-nums[i],i,path+[nums[i]],res)
阅读全文
0 0
- leetcode9
- leetcode9
- leetcode9---python
- LeetCode9:Palindromic Number
- Leetcode9.reorder List
- [LeetCode9] Palindrome Number
- leetcode9:Next Permutation
- Leetcode9: Add Binary
- leetcode9 Palindrome Number
- LeetCode9:Palindrome Number
- leetcode9. Palindrome Number
- LeetCode9----------Palindrome Number
- Leetcode9: Palindrome Number
- Leetcode9: Palindrome Number
- leetcode9. Palindrome Number
- leetcode9. Palindrome Number
- LeetCode9. Palindrome Number
- LeetCode9、Palindrome Number
- python学习笔记(九)异常处理
- hpu E
- 第一篇文章博客测试
- Linux 不同系统之间的文件传输
- 面向对象设计原则
- leetcode9
- windows下python2和python3共存
- Notification实现消息通知
- 如何制作Docker镜像
- switch的case只能代表单值
- 大端存储与小端存储
- Angularjs 表单验证3-密码、确认密码处理
- Hive查询异常
- BUG修复:EasyPlayer卡在首帧的bug修改