感悟Floyd
今天做了一道Jump題目,本以為是一道搜索的
題目,沒想到竟然用Floyd就輕松的解決了。
先來看看這個題目吧!
Description
Sample Input
3 3
1 2 3
1 3 2
1 2 1
1 3 1
Sample Output
Yes
Yes
No
到底如何用Floyd算法來解決呢?
其實,很簡單,我們只要求出任意一點跳到另外
任意一點的最小能量值,并且把它們存儲起來就可以了,
當然,這個存儲要用二維數(shù)組來保存了。訪問的時候
直接訪問二維數(shù)組就可以了,一個if語句就可以解決問題。
之所以沒有想到用Floyd來解決,那是因為還不是
徹底的了解Floyd是用來做什么用的。
提到Floyd,也許我們本能的反應(yīng)就是,任意兩點
間的最短路徑,其實這樣認為很是片面。難道僅僅是
局限于距離嗎?當然不是,其它的屬性,比如說時間,
能量,花費……完全是可以的。但是,要記住,必須
符合最小的特性。
一定要明白這個道理呀,找到事物間的聯(lián)系,不然
很吃虧的呀。
posted on 2011-10-18 11:22 More study needed. 閱讀(893) 評論(0) 收藏 舉報
浙公網(wǎng)安備 33010602011771號