leetcode演算法練習 79 單詞搜尋

2021-10-06 10:15:49 字數 1242 閱讀 5707

所有題目源**:git位址

題目

給定乙個二維網格和乙個單詞,找出該單詞是否存在於網格中。

單詞必須按照字母順序,通過相鄰的單元格內的字母構成,其中「相鄰」單元格是那些水平相鄰或垂直相鄰的單元格。同乙個單元格內的字母不允許被重複使用。

示例:board =[[

'a',

'b',

'c',

'e'],[

's',

'f',

'c',

's'],[

'a',

'd',

'e',

'e']

]給定 word =

"abcced"

, 返回 true

給定 word =

"see"

, 返回 true

給定 word =

"abcb"

, 返回 false

board 和 word 中只包含大寫和小寫英文本母。

1<= board.length <=

2001

<= board[i]

.length <=

2001

<= word.length <=10^

3

方案:回溯法
class

solution

}return

false;}

public

boolean

backtrack

(int i,

int j,

int k)

else

if(i < row -

1&& tmp[i +1]

[j]==0&&

backtrack

(i +

1, j, k +1)

)else

if(j >

0&& tmp[i]

[j -1]

==0&&backtrack

(i, j -

1, k +1)

)else

if(j < col -

1&& tmp[i]

[j +1]

==0&&backtrack

(i, j +

1, k +1)

) tmp[i]

[j]=0;

}return

false;}

}

複雜度計算

SICP練習 79 練習2 51

練習 2.51 通過書中前面的內容,我們知道below中來將框架分成上下兩部分,而beside將框架分成左右兩部分。因此,below定義如下 define below painter1 painter2 let split point make vect 0.0 0.5 let paint top ...

leetcode演算法練習

1014.最佳觀光組合 給定正整數陣列 a,a i 表示第 i 個觀光景點的評分,並且兩個景點 i 和 j 之間的距離為 j i。一對景點 i j 組成的觀光組合的得分為 a i a j i j 景點的評分之和減去它們兩者之間的距離。返回一對觀光景點能取得的最高分。示例 輸入 8,1,5,2,6 輸...

leetcode演算法練習

1111.有效括號的巢狀深度 有效括號字串 定義 對於每個左括號,都能找到與之對應的右括號,反之亦然。詳情參見題末 有效括號字串 部分。巢狀深度 depth 定義 即有效括號字串巢狀的層數,depth a 表示有效括號字串 a 的巢狀深度。詳情參見題末 巢狀深度 部分。給你乙個 有效括號字串 seq...