日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[回溯系列] 组合总和+电话号码(day25)

發(fā)布時間:2024/1/8 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [回溯系列] 组合总和+电话号码(day25) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

LC216 組合總和3

找出所有相加之和為?n 的?k?個數(shù)的組合,且滿足下列條件:

1. 只使用數(shù)字1到9;2.?每個數(shù)字?最多使用一次。
返回所有可能的有效組合的列表 。組合可以以任何順序返回

class Solution:def combinationSum3(self, k: int, n: int) -> List[List[int]]:path, paths =[], []pathsum = 0def backtracking(startindex):nonlocal pathsumif len(path) == k and pathsum == n:paths.append(path[:])returnif pathsum > n:returnfor i in range(startindex, 10):path.append(i)pathsum += ibacktracking(i+1) # i+1 誤寫成了index+1,浪費了一些調(diào)試時間path.pop() pathsum -= ibacktracking(1)return paths

LC17 電話號碼

給定一個僅包含數(shù)字?2-9?的字符串,返回所有它能表示的字母組合。答案可以按 任意順序 返回。

給出數(shù)字到字母的映射如下(與電話按鍵相同)。注意 1 不對應任何字母。

給出兩個測試用例:

輸入:digits = "23" 輸出:["ad","ae","af","bd","be","bf","cd","ce","cf"] 輸入:digits = "" 輸出:[]

思路:建立一個map,用數(shù)組或者用字典。第一次寫的時候沒考慮digits為空的情況,晚上再寫一遍還是一樣的錯誤提示,??要注意哦。

class Solution:def letterCombinations(self, digits: str) -> List[str]:map = [ [],[],['a','b','c'], \['d','e','f'], ['g','h','i'],\['j','k','l'], ['m','n','o'], \['p','q','r','s'],['t','u', 'v'], \['w','x','y','z']]path, paths = [], []p = 0if not digits: return []if digits == '1': return []def backtracking(strs):nonlocal pif p == len(digits):paths.append(''.join(path))returnfor i in map[int(digits[p])]:path.append(i)p += 1backtracking(strs)p -= 1path.pop()backtracking(digits)return paths

安慰自己:開始新的概念,做題老出錯,需要調(diào)試總是難免的,加油。

總結

以上是生活随笔為你收集整理的[回溯系列] 组合总和+电话号码(day25)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。