77件の質問
裏:
クラスのソリューション: DEF組み合わせ(:int型で、k:セルフ、nは整数) - > 一覧[一覧[INT]: RES = [] DEF (I、temp_list)をバックトラック: もし LEN(temp_list)== :K res.append (temp_list) 用 J における範囲(I、N + 1 ): バックトラック(J + 1、temp_list + [J]) バックトラック( 1 、[]) 戻り RES
78件の質問:
裏:
クラスのソリューション: defのサブセット(自己、NUMS:リスト[INT]) - > 一覧[一覧[INT]: RESが = [] DEF ヘルパー(I、TMP): res.append(TMP) のための J での範囲(I、 LEN(NUMS)): ヘルパー(J + 1、TMP + [NUMS [J]) ヘルパー(0、[]) 戻り RES
90件の質問:
裏:
クラスのソリューション: DEF - >:subsetsWithDup(一覧の[int]は自己、NUMS)一覧[一覧[INT]: RES = [] のn = LEN(NUMS) nums.sort() デフヘルパー(IDX、TMP): RES。 (TMP)を追加 するための I 中:範囲(IDX、N) であれば I> IDX と NUMS [I] == NUMS [I-1 ]: 続ける ヘルパー(I +1、TMP + [NUMS [I]) ヘルパー( 0、[]) 戻り RES
93件の質問
裏:
クラスソリューション: DEF restoreIpAddresses(自己、S:STR) - > リスト[STR]: RES = [] N = LEN(S) DEF (I、TMP、フラグ)をバックトラック: もし I == N 及びフラグ== 0: res.append(TMPの[: -1 ]) リターン ならフラグ< 0: 復帰 用 J における範囲(I、I + 3 ): もし J < N: もし I == J と S [j] ==" 0 " : バックトラック(J + 1、TMP + S [j] + " "、フラグ- 1 ) ブレークもし 0 <INT(S [I:J + 1])<= 255 : バックトラック(J + 1、 TMP + S [I:J + 1] + " "、フラグ- 1 ) バックトラック(0、""、4 ) リターン RES
131タイトル
バックトラック。
クラスのソリューション: デフパーティション(自己、S:STR) - > 一覧[一覧[STR]]: RES = [] TEMP = [] DEF (S、TEMP)を後戻り: もし ないS: res.append(TEMP) のための I (1、LEN(S)+1の範囲): もし S [:I] [:: - 1] == S [:I]: バックトラック(S [I:]、TEMP + [S [:I] ) バックトラック(S、[])戻り RES
216タイトル:
裏:
クラスソリューション: DEF combinationSum3(:INT、N:自己、K INT) - > リスト[リスト[INT]: RES = [] DEF (kは、nは、開始、TMP)ヘルパー: もし k個の== 0: もし N == 0: res.append(TMP) のリターン のための I における範囲(10開始): もし <NI 0:ブレーク ヘルパー(K -1、NI、I + 1、TMP + [I]) ヘルパー(K、 nは、 1 、[]) 戻り RES