Floyd-Warshall算法描述 1)適用范圍: a)APSP(All Pairs Shortest Paths) b)稠密圖效果最佳 c)邊權可正可負 2)算法描述: a)初始化:dis[u,v]=w[u,v] b)For k:=1 to n For i:=1 to n For j:=1 to n If dis[i,j]>dis[i,k]+dis[k,j] Then Dis[I,j]:=dis[I,k]+dis[k,j] c)算法結束:dis即為所有點對的最短路徑矩陣 3)算法小結:此算法簡單有效,由于三重循環結構緊湊,對于稠密圖,效率要高于執行|V|次Dijkstra算法。時間復雜度O(n^3)。 考慮下列變形:如(I,j)∈E則dis[I,j]初始為1,else初始為0,這樣的Floyd算法最后的最短路徑矩陣即成為一個判斷I,j是否有通路的矩陣。更簡單的,我們可以把dis設成boolean類型,則每次可以用“dis[I,j]:=dis[I,j]or(dis[I,k]and dis[k,j])”來代替算法描述中的藍色部分,可以更直觀地得到I,j的連通情況。
標簽: Floyd-Warshall Shortest Pairs Paths
上傳時間: 2013-12-01
上傳用戶:dyctj
以上介紹的三種求CRC的程序,按位求法速度較慢,但占用最小的內存空間;按字節查表求CRC的方法速度較快,但占用較大的內存;按半字節查表求CRC的方法是前兩者的均衡,即不會占用太多的內存,同時速度又不至于太慢,比較適合8位小內存的單片機的應用場合。以上所給的C程序可以根據各微處理器編譯器的特點作相應的改變,比如把CRC余式表放到程序存儲區內等。
上傳時間: 2016-02-19
上傳用戶:lvzhr
C++程序語言教材,第三版,新手發文,個人積累好文章,歡迎使用
上傳時間: 2013-12-19
上傳用戶:CHENKAI
一個能夠分析三種整數、標識符、主要運算符和主要關鍵字的詞法分析程序。 ㈠、基本要求: 標識符 <字母>(<字母>|<數字字符>)* 十進制整數 0 | (1|2|3|4|5|6|7|8|9)(0|1|2|3|4|5|6|7|8|9)* 八進制整數 0(1|2|3|4|5|6|7)(0|1|2|3|4|5|6|7)* 十六進制整數 0x(0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f)(0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f)* 運算符和分隔符 + - * / > < = ( ) ; 關鍵字 if then else while do ㈡、附加要求: 標識符 <字母>(<字母>|<數字字符>)*(ε|_|.)(<字母>|<數字字符>)* 十進制整數 (0|1|2|3|4|5|6|7|8|9)(0|1|2|3|4|5|6|7|8|9)*(ε|.)(0|1|2|3|4|5|6|7|8|9)(0|1|2|3|4|5|6|7|8|9)* 八進制整數 0(1|2|3|4|5|6|7)(0|1|2|3|4|5|6|7)* (ε|.)(0|1|2|3|4|5|6|7)(0|1|2|3|4|5|6|7)* 十六進制整數 0x(0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f)(0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f)* (ε|.) (0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f)(0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f)*
上傳時間: 2016-03-03
上傳用戶:zhengjian
把R、L、C轉換成頻率信號f,轉換的原理分別是RC振蕩電路和LC電容三點式振蕩電路。單片機計數得出被測頻率,由該頻率計算出各個參數值,數據處理后,送顯示。
上傳時間: 2016-03-04
上傳用戶:小眼睛LSL
用c語言實現rc6加密及解密算法 RC6是參數變量的分組算法,實際上是由三個參數確定的一個加密算法族。由三部分組成,分別為混合密鑰生成過程、加密過程和解密過程。
上傳時間: 2013-12-25
上傳用戶:wyc199288
// 工程名稱: 61_SpeechClock // 功能描述: 61板程序示例--具有語音播報功能的電子鐘 // 使用61板上的三個按鍵控制報時和時間調整: // Key1 - 按一下播報年、月、日,再按一下播報時、分 // 長按Key1鍵達到1.5秒,則進入日期時間調整模式 // Key2 - 在調整模式下,使年、月、日、時、分、秒增加 // Key3 - 在調整模式下,使年、月、日、時、分、秒減小 // 涉及的庫: CMacro1016.lib // SacmV26e.lib // 組成文件: main.c, Sound.c, Clock.c, Clock_Speech.c, Clock_Adjust.c // Key.asm, hardware.asm, ISR.asm // A2000.h, Sound.h, Clock.h, Clock_Speech.h, Clock_Adjust.h, Key.h, SPCE061A.h, // 硬件連接: 61板自帶的三個按鍵已經連接在IOA0~IOA2上 // 維護記錄: 2006-8-30 v1.0
標簽: SpeechClock Key1 61 工程
上傳時間: 2016-03-07
上傳用戶:semi1981
進行分段三次Hermite插值和分段三次Spline插值,比較F-C取導數方法所得到期收益率曲線逼近中債結算公司的到期收益率曲線的效果的程序
上傳時間: 2014-01-07
上傳用戶:ikemada
一、 實驗目的 1、 掌握使用Turbo C或VC上機編寫、調試數據結構程序的基本方法。 2、 掌握線性表的基本操作:插入、刪除、查找等操作在順序存儲結構和鏈接存儲結構上的算法及其實現方法。 二、 實驗要求 1、 認真閱讀和掌握本實驗的程序。 2、 上機運行本程序,測試所有功能點。 3、 結合源程序分析運行結果。 4、 按照你對線性表的操作需要,加入新功能(例如合并表)并重新改寫主程序。 三、 注意事項 在磁盤上創建一個目錄,專門用于存儲數據結構實驗的程序。 四、 實驗內容 以下為實現線性表基本操作的C源程序。
上傳時間: 2013-12-23
上傳用戶:tianyi223
一些數值計算和趣味數學的C源碼,如愛因斯坦的數學問題、三色球問題等等,內有說明。
上傳時間: 2014-01-09
上傳用戶:ouyangtongze