その上のDFS ....
その後、私は愚かです。空とは見なされない質問する前に、この質問が考慮されます。。。。
また、参照によって渡されるベクトルの点に注意してください。
クラスソリューション{ 公共: 無効 DFS(文字列一時、ベクトル< 文字列 >&RET、文字列の数字、int型のインデックス、文字列 * strの、int型のlen) { もし(インデックス== LEN) { ret.push_back(TEMP)。 返します。 } 他 { INT、N = STR [(数字[インデックス] - [ 2 ' )]の長さ()。 以下のために(int型 i = 0 ; iがn <; iは++ ) DFS((TEMP +のSTR [(数字[インデックス] - [ 2 ')] [i])と、右、数字、インデックス+ 1 、STR、LEN)。 } } 公共: ベクター < ストリング > letterCombinations(文字列の数字){ ベクトル < 文字列 > RET; もし(桁== "" ) のリターンRET; 文字列 strの[ 10 ] = { " ABC "、" DEF "、" GHI "、" JKL "、" MNO "、" PQRS "、" TUV "、" WXYZ " }。 文字列の TEMP = "" ; この - > DFS(TEMP、RET、数字、0 、STR、LEN)。 リターンRET; } }。
また、衝撃のビット:このマシンのパフォーマンスが強すぎたり、あまりにもいくつかのテストケースはオーストリアです