国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Floyd-Warshall算法過程中矩陣計算方法—十字交叉法

2019-11-11 07:09:36
字體:
來源:轉載
供稿:網友
前幾天在看Floyd算法的時候,雖然感覺程序很簡單,但是讓你動手寫那些過程矩陣的時候就感覺不怎么簡單了,就上網找找看有木有簡便的計算方法,搜索之后沒有發現有現成的例子,只搜到了兩句“弄兩條線,從左上角挪到右下角”,“十字交叉法,從左上角到右下角”,除此之外就再也木有找到有用的東西了。沒有內容就創造內容,填補空白!

先來簡單分析下,由于矩陣中對角線上的元素始終為0,因此以k為中間點時,從上一個矩陣到下一個矩陣變化時,矩陣的第k行,第k列和對角線上的元素是不發生改變的(對角線上都是0,因為一個頂點到自己的距離就是0,一直不變;而當k為中間點時,k到其他頂點(第k行)和其他頂點到k(第k列)的距離是不變的)

因此每一步中我們只需要判斷4*4-3*4+2=6個元素是否發生改變即可,也就是要判斷既不在第k行第k列又不在對角線上的元素。具體計算步驟如下:以k為中間點(1)“三條線”:劃去第k行,第k列,對角線2)“十字交叉法”:對于任一個不在三條線上的元素x,均可與另外在k行k列上的3個元素構成一個2階矩陣x是否發生改變與2階矩陣中不包含x的那條對角線上2個元素的和有關,若二者之和小于x,則用它們的和替換x,對應的Path矩陣中的與x相對應的位置用k來替代。。。下面來具體看高分筆記上面的那個題目吧。。。。

詳細圖解:


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 葫芦岛市| 淅川县| 霸州市| 大厂| 沧源| 隆安县| 荔浦县| 页游| 依安县| 城口县| 秀山| 呼和浩特市| 江陵县| 江油市| 屏山县| 岳池县| 湘潭市| 广昌县| 商河县| 古交市| 富平县| 郧西县| 宁城县| 平山县| 北流市| 大宁县| 潮安县| 永平县| 白城市| 滕州市| 蒙阴县| 剑阁县| 龙山县| 新兴县| 庐江县| 通江县| 湄潭县| 响水县| 丰台区| 新泰市| 汤阴县|