四月十六號,明天準備開始圖的學習了,這兩天做了幾個廣度優先的演算法題,每個題都有一些不同,有的是單源廣度優先,有的是多源廣度優先,下面這個題,是多源廣度優先演算法的應用,那麼我們列出題目:
在做這種,有可能涉及多源廣度的問題時候,我們一定要考慮清楚,誰作為源頭是最合適的呢?這道題我們分析一下,首先找到每個元素最近的0!我們很容易就把1當做源頭加進去了,一圈一圈的找,直到找到0.。但是我們找1作為源頭時候,我們必須每次都更新1的值,所以很麻煩,我們應該把每個0都加進去,一層一層的尋找,第一次廣度優先找的是所有不為0並且是1的(距離也是1),第二次把第一次加進去,更新層數,那麼就是第二次的以此類推,下面我們列出**:
class solution );}}
level++;
}return res;}}
這種題,一定要找好源的選擇! LeetCode 542 01 矩陣 中等
給定乙個由 0 和 1 組成的矩陣,找出每個元素到最近的 0 的距離。兩個相鄰元素間的距離為 1 示例 1 輸入 0 0 0 0 1 0 0 0 0 輸出 0 0 0 0 1 0 0 0 0 示例 2 輸入 0 0 0 0 1 0 1 1 1 輸出 0 0 0 0 1 0 1 2 1 注意 給定矩陣...
動態規劃 力扣542 01矩陣
給定乙個由 0 和 1 組成的矩陣 mat 請輸出乙個大小相同的矩陣,其中每乙個格仔是 mat 中對應位置元素到最近的 0 的距離。兩個相鄰元素間的距離為 1 示例 輸入 mat 0,0,0 0,1,0 0,0,0 輸出 0,0,0 0,1,0 0,0,0 一般來說,因為這道題涉及到四個方向上的最近...
dj的鄰接矩陣實現
include using namespace std const int maxn 100,bignum 100001 int g maxn maxn dis maxn t maxn siz bool state maxn void creat int k for int i 0 i siz i ...