每日一題 2020 11 5

2021-10-10 07:29:25 字數 1068 閱讀 6050

給定兩個單詞(beginword 和 endword)和乙個字典,找到從 beginword 到 endword 的最短轉換序列的長度。轉換需遵循如下規則:

每次轉換只能改變乙個字母。

轉換過程中的中間單詞必須是字典中的單詞。

說明:

思路:建圖後跑最短路即可

var length int

var dif [

]int

var vis [

]bool

var result int

var d [

]int

const

( int_max =

1<<32-

1)func

getdif

(s1 string

, s2 string

)(ans int)}

}return

}func

ladderlength

(beginword string

, endword string

, wordlist [

]string

)int

dif[0]

[length+1]

=getdif

(beginword,endword)

dif[length+1]

[0]= dif[0]

[length+1]

can :=

false

for i :=

0;i!can

for i:=

0;i} d[0]

=0count :=

1for count <= length

}if ind ==-1

vis[ind]

=true

for i:=

0;i<=length+

1;i++

} count++

}if d[length+1]

== int_max

return d[length+1]

+1}

每日一題 1

題目詳情 peter喜歡玩數字遊戲,但數獨這樣的遊戲對他來說太簡單了,於是他準備玩乙個難的遊戲。遊戲規則是在乙個n n的 裡填數,規則 對於每個輸入的n,從左上角開始,總是以對角線為起點,先橫著填,再豎著填。這裡給了一些樣例,請在樣例中找到規律並把這個n n的 列印出來吧。輸入描述 多組測試資料 資...

每日一題2018 3 21

leetcode 2 模擬十進位制運算考察單鏈表基本操作。題無難點,個人基礎需要提高。definition for singly linked list.struct listnode class solution while p while q if shi val s next null ret...

每日一題2018 3 22

leetcode 03 最長不重複子串 第一反應就是動態規劃。看到了網上的方法一。直接把問題簡化為找兩個重複字元間的最長距離,太巧妙了!class solution if i idx max locs s i i return max ling老師的方法二 仍舊轉化為動態規劃,但是為節省空間不再開個...