摘要:九宮格鍵盤輸入給定一個數字字符串,返回數字可能代表的所有可能的字母組合。數字到字母的映射就像九宮格電話按鈕一樣如下圖。思路以為例,代表,只需要將其轉換成,然后處理,為,將這三個字符分別加到的每一個元素中,得到。重復此過程即可。
九宮格鍵盤輸入 Letter Combinations of a Phone Number
給定一個數字字符串,返回數字可能代表的所有可能的字母組合。
數字到字母的映射(就像九宮格電話按鈕一樣)如下圖。
Given a digit string, return all possible letter combinations that the number could represent.
A mapping of digit to letters (just like on the telephone buttons) is given below.
Note:
Although the above answer is in lexicographical order, your answer could be in any order you want.
example 1
Input:Digit string "23" Output: ["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"].思路
以23為例,2代表abc,只需要將其轉換成lists = [a,b,c],然后處理3,3為def,將這三個字符分別加到s的每一個元素中,得到["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"]。重復此過程即可。
上述思路可以用循環完成,同時python提供的reduce函數和生成式特性能夠精煉地表述,下面給出兩種代碼。
代碼class Solution(object): def letterCombinations(self, digits): """ :type digits: str :rtype: List[str] """ from functools import reduce #python3.x if not digits: return [] nums = "0 1 abc def ghi jkl mno pqrs tuv wxyz".split(" ") return reduce(lambda last, d: [x + y for x in last for y in nums[int(d)]], digits, [""]) # 第三個參數是initial #使用循環完成 def letterCombinations_old(self, digits): if not digits: return [] nums = "0 1 abc def ghi jkl mno pqrs tuv wxyz".split(" ") ret = [_ for _ in nums[int(digits[0])]] digits = digits[1:] while digits: ret = [x + y for x in ret for y in nums[int(digits[0])]] digits = digits[1:] return ret
本題以及其它leetcode題目代碼github地址: github地址
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/38667.html
摘要:踩的大坑前言最近有個需求要將全平臺的交易密碼由原來的位復雜密碼改為位純數字交易密碼,涉及到非常多的業務場景,但修改起來也無非兩種設置交易密碼,使用交易密碼設置交易密碼普通長條輸入框彈起數字鍵盤支持明暗文切換查看使用交易密碼顯示六個格子彈起 input ios 踩的大坑 前言:最近有個需求要將全平臺的交易密碼由原來的 6-16位 復雜密碼改為6位純數字交易密碼,涉及到非常多的業務場景,但...
摘要:第部分第部分第部分第部分源代碼下載每日前端實戰系列的全部源代碼請從下載代碼解讀解數獨的一項基本功是能迅速判斷一行一列或一個九宮格中缺少哪幾個數字,本項目就是一個訓練判斷九宮格中缺少哪個數字的小游戲。 showImg(https://segmentfault.com/img/bVbkNGa?w=400&h=300); 效果預覽 按下右側的點擊預覽按鈕可以在當前頁面預覽,點擊鏈接可以全屏預...
摘要:第部分第部分第部分第部分源代碼下載每日前端實戰系列的全部源代碼請從下載代碼解讀解數獨的一項基本功是能迅速判斷一行一列或一個九宮格中缺少哪幾個數字,本項目就是一個訓練判斷九宮格中缺少哪個數字的小游戲。 showImg(https://segmentfault.com/img/bVbkNGa?w=400&h=300); 效果預覽 按下右側的點擊預覽按鈕可以在當前頁面預覽,點擊鏈接可以全屏預...
閱讀 1300·2021-10-08 10:05
閱讀 4120·2021-09-22 15:54
閱讀 3110·2021-08-27 16:18
閱讀 3111·2019-08-30 15:55
閱讀 1443·2019-08-29 12:54
閱讀 2752·2019-08-26 11:42
閱讀 547·2019-08-26 11:39
閱讀 2131·2019-08-26 10:11