Floyd-Warshall算法描述 1)適用范圍: a)APSP(All Pairs Shortest Paths) b)稠密圖效果最佳 c)邊權(quán)可正可負(fù) 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)算法結(jié)束:dis即為所有點(diǎn)對的最短路徑矩陣 3)算法小結(jié):此算法簡單有效,由于三重循環(huán)結(jié)構(gòu)緊湊,對于稠密圖,效率要高于執(zhí)行|V|次Dijkstra算法。時間復(fù)雜度O(n^3)。 考慮下列變形:如(I,j)∈E則dis[I,j]初始為1,else初始為0,這樣的Floyd算法最后的最短路徑矩陣即成為一個判斷I,j是否有通路的矩陣。更簡單的,我們可以把dis設(shè)成boolean類型,則每次可以用“dis[I,j]:=dis[I,j]or(dis[I,k]and dis[k,j])”來代替算法描述中的藍(lán)色部分,可以更直觀地得到I,j的連通情況。
標(biāo)簽: Floyd-Warshall Shortest Pairs Paths
上傳時間: 2013-12-01
上傳用戶:dyctj
C++完美演繹 經(jīng)典算法 如 /* 頭文件:my_Include.h */ #include <stdio.h> /* 展開C語言的內(nèi)建函數(shù)指令 */ #define PI 3.1415926 /* 宏常量,在稍后章節(jié)再詳解 */ #define circle(radius) (PI*radius*radius) /* 宏函數(shù),圓的面積 */ /* 將比較數(shù)值大小的函數(shù)寫在自編include文件內(nèi) */ int show_big_or_small (int a,int b,int c) { int tmp if (a>b) { tmp = a a = b b = tmp } if (b>c) { tmp = b b = c c = tmp } if (a>b) { tmp = a a = b b = tmp } printf("由小至大排序之后的結(jié)果:%d %d %d\n", a, b, c) } 程序執(zhí)行結(jié)果: 由小至大排序之后的結(jié)果:1 2 3 可將內(nèi)建函數(shù)的include文件展開在自編的include文件中 圓圈的面積是=201.0619264
標(biāo)簽: my_Include include define 3.141
上傳時間: 2014-01-17
上傳用戶:epson850
源代碼\用動態(tài)規(guī)劃算法計(jì)算序列關(guān)系個數(shù) 用關(guān)系"<"和"="將3個數(shù)a,b,c依次序排列時,有13種不同的序列關(guān)系: a=b=c,a=b<c,a<b=v,a<b<c,a<c<b a=c<b,b<a=c,b<a<c,b<c<a,b=c<a c<a=b,c<a<b,c<b<a 若要將n個數(shù)依序列,設(shè)計(jì)一個動態(tài)規(guī)劃算法,計(jì)算出有多少種不同的序列關(guān)系, 要求算法只占用O(n),只耗時O(n*n).
標(biāo)簽: lt 源代碼 動態(tài)規(guī)劃 序列
上傳時間: 2013-12-26
上傳用戶:siguazgb
crc任意位生成多項(xiàng)式 任意位運(yùn)算 自適應(yīng)算法 循環(huán)冗余校驗(yàn)碼(CRC,Cyclic Redundancy Code)是采用多項(xiàng)式的 編碼方式,這種方法把要發(fā)送的數(shù)據(jù)看成是一個多項(xiàng)式的系數(shù) ,數(shù)據(jù)為bn-1bn-2…b1b0 (其中為0或1),則其對應(yīng)的多項(xiàng)式為: bn-1Xn-1+bn-2Xn-2+…+b1X+b0 例如:數(shù)據(jù)“10010101”可以寫為多項(xiàng)式 X7+X4+X2+1。 循環(huán)冗余校驗(yàn)CRC 循環(huán)冗余校驗(yàn)方法的原理如下: (1) 設(shè)要發(fā)送的數(shù)據(jù)對應(yīng)的多項(xiàng)式為P(x)。 (2) 發(fā)送方和接收方約定一個生成多項(xiàng)式G(x),設(shè)該生成多項(xiàng)式 的最高次冪為r。 (3) 在數(shù)據(jù)塊的末尾添加r個0,則其相對應(yīng)的多項(xiàng)式為M(x)=XrP(x) 。(左移r位) (4) 用M(x)除以G(x),獲得商Q(x)和余式R(x),則 M(x)=Q(x) ×G(x)+R(x)。 (5) 令T(x)=M(x)+R(x),采用模2運(yùn)算,T(x)所對應(yīng)的數(shù)據(jù)是在原數(shù) 據(jù)塊的末尾加上余式所對應(yīng)的數(shù)據(jù)得到的。 (6) 發(fā)送T(x)所對應(yīng)的數(shù)據(jù)。 (7) 設(shè)接收端接收到的數(shù)據(jù)對應(yīng)的多項(xiàng)式為T’(x),將T’(x)除以G(x) ,若余式為0,則認(rèn)為沒有錯誤,否則認(rèn)為有錯。
標(biāo)簽: crc CRC 多項(xiàng)式 位運(yùn)算
上傳時間: 2014-11-28
上傳用戶:宋桃子
crc任意位生成多項(xiàng)式 任意位運(yùn)算 自適應(yīng)算法 循環(huán)冗余校驗(yàn)碼(CRC,Cyclic Redundancy Code)是采用多項(xiàng)式的 編碼方式,這種方法把要發(fā)送的數(shù)據(jù)看成是一個多項(xiàng)式的系數(shù) ,數(shù)據(jù)為bn-1bn-2…b1b0 (其中為0或1),則其對應(yīng)的多項(xiàng)式為: bn-1Xn-1+bn-2Xn-2+…+b1X+b0 例如:數(shù)據(jù)“10010101”可以寫為多項(xiàng)式 X7+X4+X2+1。 循環(huán)冗余校驗(yàn)CRC 循環(huán)冗余校驗(yàn)方法的原理如下: (1) 設(shè)要發(fā)送的數(shù)據(jù)對應(yīng)的多項(xiàng)式為P(x)。 (2) 發(fā)送方和接收方約定一個生成多項(xiàng)式G(x),設(shè)該生成多項(xiàng)式 的最高次冪為r。 (3) 在數(shù)據(jù)塊的末尾添加r個0,則其相對應(yīng)的多項(xiàng)式為M(x)=XrP(x) 。(左移r位) (4) 用M(x)除以G(x),獲得商Q(x)和余式R(x),則 M(x)=Q(x) ×G(x)+R(x)。 (5) 令T(x)=M(x)+R(x),采用模2運(yùn)算,T(x)所對應(yīng)的數(shù)據(jù)是在原數(shù) 據(jù)塊的末尾加上余式所對應(yīng)的數(shù)據(jù)得到的。 (6) 發(fā)送T(x)所對應(yīng)的數(shù)據(jù)。 (7) 設(shè)接收端接收到的數(shù)據(jù)對應(yīng)的多項(xiàng)式為T’(x),將T’(x)除以G(x) ,若余式為0,則認(rèn)為沒有錯誤,否則認(rèn)為有錯
標(biāo)簽: crc CRC 多項(xiàng)式 位運(yùn)算
上傳時間: 2014-01-16
上傳用戶:hphh
模式識別的經(jīng)典算法之一,動態(tài)聚類的k均值算法,采用matlab進(jìn)行編程
上傳時間: 2016-02-07
上傳用戶:nanshan
數(shù)據(jù)挖掘算法很多,其中模糊k均值算法是目前使用比較多的分類方法
標(biāo)簽: 數(shù)據(jù)挖掘算法
上傳時間: 2014-12-19
上傳用戶:xuanchangri
1.有三根桿子A,B,C。A桿上有若干碟子 2.每次移動一塊碟子,小的只能疊在大的上面 3.把所有碟子從A桿全部移到C桿上 經(jīng)過研究發(fā)現(xiàn),漢諾塔的破解很簡單,就是按照移動規(guī)則向一個方向移動金片: 如3階漢諾塔的移動:A→C,A→B,C→B,A→C,B→A,B→C,A→C 此外,漢諾塔問題也是程序設(shè)計(jì)中的經(jīng)典遞歸問題
標(biāo)簽: 移動 發(fā)現(xiàn)
上傳時間: 2016-07-25
上傳用戶:gxrui1991
基因算法,用VC++或MATLAB,java等工具設(shè)計(jì)一程序計(jì)算任一個隨機(jī)產(chǎn)生的DNA基因表達(dá)式的有效長度和值 設(shè)隨機(jī)產(chǎn)生的基因表達(dá)式為: + Q - / b * b a Q b a a b a a b b a a a b
上傳時間: 2014-01-09
上傳用戶:aa54
模式識別的經(jīng)典算法之一,動態(tài)聚類的k均值算法,不同于普通的聚斂算法。
上傳時間: 2016-11-12
上傳用戶:zjf3110
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1