leetcode -- Letter Combinations of a Phone Number -- 重点
来源:互联网 发布:php session共享 编辑:程序博客网 时间:2024/05/18 20:12
https://leetcode.com/problems/letter-combinations-of-a-phone-number/
先手工枚举,构造解空间树.标准dfs求解。
class Solution(object): def dfs(self, digits, target_lvl, mydict, subres, res): lvl = len(subres) if lvl == target_lvl: if subres: res.append(subres[:]) return else: for x in mydict[digits[lvl]]:#子节点为下一个数字对应的每个字母 self.dfs(digits, target_lvl, mydict, subres + x, res) def letterCombinations(self, digits): """ :type digits: str :rtype: List[str] """ mydict = {'2':['a','b','c'], '3':['d','e','f'], '4':['g','h','i'], '5':['j','k','l'], '6':['m','n','o'], '7':['p','q','r','s'], '8':['t','u','v'], '9':['w','x','y','z'] } res = [] self.dfs(digits, len(digits), mydict, "",res) return res
自己重写code
这里的子集树,每一层对应一个数字的三个字母,其子节点为下一个数字的三个字母。
class Solution(object): def dfs(self, candidates, level, mydict, subres, res): if level == len(candidates): res.append(subres) return#不要忘记return for j in mydict[candidates[level]]:#每一个level对应一个数字 self.dfs(candidates, level + 1, mydict, subres + j, res) def letterCombinations(self, digits): """ :type digits: str :rtype: List[str] """ mydict = {'2':['a','b','c'], '3':['d','e','f'], '4':['g','h','i'], '5':['j','k','l'], '6':['m','n','o'], '7':['p','q','r','s'], '8':['t','u','v'], '9':['w','x','y','z'] } if not digits: return [] res = [] self.dfs(digits, 0, mydict, '', res) return res
0 0
- leetcode -- Letter Combinations of a Phone Number -- 重点
- LeetCode: Letter Combinations of a Phone Number
- LeetCode Letter Combinations of a Phone Number
- LeetCode: Letter Combinations of a Phone Number
- [Leetcode] Letter Combinations of a Phone Number
- [LeetCode] Letter Combinations of a Phone Number
- 【leetcode】Letter Combinations of a Phone Number
- LeetCode: Letter Combinations of a Phone Number
- [LeetCode]Letter Combinations of a Phone Number
- LeetCode-Letter Combinations of a Phone Number
- [LeetCode] Letter Combinations of a Phone Number
- LeetCode - Letter Combinations of a Phone Number
- LeetCode:Letter Combinations of a Phone Number
- LeetCode | Letter Combinations of a Phone Number
- leetcode Letter Combinations of a Phone Number
- Leetcode: Letter Combinations of a Phone Number
- 【leetcode】Letter Combinations of a Phone Number
- [LeetCode] Letter Combinations of a Phone Number
- 合并排序数组——LinkCode
- iOS开发之Core Data数据存储
- PCA技术降维
- (小笔记) 动态添加textview
- JBoss Access log的配置
- leetcode -- Letter Combinations of a Phone Number -- 重点
- angular debounce throttle
- 分布式Process之三: Time and Ordering
- 基于多尺度对比度x射线图像增强算法
- SPIKE&FUZZING 模糊测试(收藏)
- CentOS7.1安装Oracle 12.1客户端以及cx_Oracle
- spark on yarn启用动态分配
- 数据结构之二叉搜索树
- IOS 基础框架名称