詞法分析程序,可對(duì)以下的C源程序進(jìn)行分析:main() {int a[12] ,sum for(i=1 i<=12 i++) {for(j=1 j<=12 j++)scanf("%d",&a[i][j]) } for(i=12 i>=1 i--){ for(j=12 j>=1 j--){ if(i==j&&i+j==13)sum+=a[i][j] } } printf("%c",sum) }
上傳時(shí)間: 2013-12-26
上傳用戶(hù):skhlm
算法介紹 矩陣求逆在程序中很常見(jiàn),主要應(yīng)用于求Billboard矩陣。按照定義的計(jì)算方法乘法運(yùn)算,嚴(yán)重影響了性能。在需要大量Billboard矩陣運(yùn)算時(shí),矩陣求逆的優(yōu)化能極大提高性能。這里要介紹的矩陣求逆算法稱(chēng)為全選主元高斯-約旦法。 高斯-約旦法(全選主元)求逆的步驟如下: 首先,對(duì)于 k 從 0 到 n - 1 作如下幾步: 從第 k 行、第 k 列開(kāi)始的右下角子陣中選取絕對(duì)值最大的元素,并記住次元素所在的行號(hào)和列號(hào),在通過(guò)行交換和列交換將它交換到主元素位置上。這一步稱(chēng)為全選主元。 m(k, k) = 1 / m(k, k) m(k, j) = m(k, j) * m(k, k),j = 0, 1, ..., n-1;j != k m(i, j) = m(i, j) - m(i, k) * m(k, j),i, j = 0, 1, ..., n-1;i, j != k m(i, k) = -m(i, k) * m(k, k),i = 0, 1, ..., n-1;i != k 最后,根據(jù)在全選主元過(guò)程中所記錄的行、列交換的信息進(jìn)行恢復(fù),恢復(fù)的原則如下:在全選主元過(guò)程中,先交換的行(列)后進(jìn)行恢復(fù);原來(lái)的行(列)交換用列(行)交換來(lái)恢復(fù)。
上傳時(shí)間: 2015-04-09
上傳用戶(hù):wang5829
一個(gè)簡(jiǎn)單的類(lèi)似鋼琴的游戲,能夠發(fā)出3個(gè)8度音, 低音:1~7; 中音:Q~U或q~u; 高音:A~J或a~j;
標(biāo)簽: 鋼琴
上傳時(shí)間: 2015-06-09
上傳用戶(hù):784533221
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)對(duì)的最短路徑矩陣 3)算法小結(jié):此算法簡(jiǎn)單有效,由于三重循環(huán)結(jié)構(gòu)緊湊,對(duì)于稠密圖,效率要高于執(zhí)行|V|次Dijkstra算法。時(shí)間復(fù)雜度O(n^3)。 考慮下列變形:如(I,j)∈E則dis[I,j]初始為1,else初始為0,這樣的Floyd算法最后的最短路徑矩陣即成為一個(gè)判斷I,j是否有通路的矩陣。更簡(jiǎn)單的,我們可以把dis設(shè)成boolean類(lèi)型,則每次可以用“dis[I,j]:=dis[I,j]or(dis[I,k]and dis[k,j])”來(lái)代替算法描述中的藍(lán)色部分,可以更直觀地得到I,j的連通情況。
標(biāo)簽: Floyd-Warshall Shortest Pairs Paths
上傳時(shí)間: 2013-12-01
上傳用戶(hù):dyctj
求標(biāo)準(zhǔn)偏差 > function c=myfunction(x) > [m,n]=size(x) > t=0 > for i=1:numel(x) > t=t+x(i)*x(i) > end > c=sqrt(t/(m*n-1)) function c=myfunction(x) [m,n]=size(x) t=0 for i=1:m for j=1:n t=t+x(i,j)*x(i,j) end end c=sqrt(t/(m*n-1
標(biāo)簽: gt myfunction function numel
上傳時(shí)間: 2014-01-15
上傳用戶(hù):hongmo
求標(biāo)準(zhǔn)偏差 > function c=myfunction(x) > [m,n]=size(x) > t=0 > for i=1:numel(x) > t=t+x(i)*x(i) > end > c=sqrt(t/(m*n-1)) function c=myfunction(x) [m,n]=size(x) t=0 for i=1:m for j=1:n t=t+x(i,j)*x(i,j) end end c=sqrt(t/(m*n-1
標(biāo)簽: gt myfunction function numel
上傳時(shí)間: 2013-12-26
上傳用戶(hù):dreamboy36
求標(biāo)準(zhǔn)偏差 > function c=myfunction(x) > [m,n]=size(x) > t=0 > for i=1:numel(x) > t=t+x(i)*x(i) > end > c=sqrt(t/(m*n-1)) function c=myfunction(x) [m,n]=size(x) t=0 for i=1:m for j=1:n t=t+x(i,j)*x(i,j) end end c=sqrt(t/(m*n-1
標(biāo)簽: gt myfunction function numel
上傳時(shí)間: 2016-06-28
上傳用戶(hù):change0329
求標(biāo)準(zhǔn)偏差 > function c=myfunction(x) > [m,n]=size(x) > t=0 > for i=1:numel(x) > t=t+x(i)*x(i) > end > c=sqrt(t/(m*n-1)) function c=myfunction(x) [m,n]=size(x) t=0 for i=1:m for j=1:n t=t+x(i,j)*x(i,j) end end c=sqrt(t/(m*n-1
標(biāo)簽: gt myfunction function numel
上傳時(shí)間: 2014-09-03
上傳用戶(hù):jjj0202
動(dòng)態(tài)規(guī)劃的方程大家都知道,就是 f[i,j]=min{f[i-1,j-1],f[i-1,j],f[i,j-1],f[i,j+1]}+a[i,j] 但是很多人會(huì)懷疑這道題的后效性而放棄動(dòng)規(guī)做法。 本來(lái)我還想做Dijkstra,后來(lái)變了沒(méi)二十行pascal就告訴我數(shù)組越界了……(dist:array[1..1000*1001 div 2]...) 無(wú)奈之余看了xj_kidb1的題解,剛開(kāi)始還覺(jué)得有問(wèn)題,后來(lái)豁然開(kāi)朗…… 反復(fù)動(dòng)規(guī)。上山容易下山難,我們可以從上往下走,最后輸出f[n][1]。 xj_kidb1的一個(gè)技巧很重要,每次令f[i][0]=f[i][i],f[i][i+1]=f[i][1](xj_kidb1的題解還寫(xiě)錯(cuò)了)
標(biāo)簽: 動(dòng)態(tài)規(guī)劃 方程 家
上傳時(shí)間: 2014-07-16
上傳用戶(hù):libinxny
執(zhí)行步驟1: 執(zhí)行EX1126程式進(jìn)入學(xué)生考試系統(tǒng) 權(quán)限描述: 使用者查詢(xún):於”姓名”中輸入”Arno”,於”學(xué)號(hào)”中輸入”good”,再按下”使用者查詢(xún)” 即可查詢(xún). 修改使用者:於”姓名”中輸入”GUEST”,於”學(xué)號(hào)”中輸入”0000”,再按下” 修改使用者即可修改: 功能描述: 使用者開(kāi)始考試,於”姓名”中輸入自己的姓名,於”學(xué)號(hào)”中輸入學(xué)號(hào),再按下” 考試去”即可: 開(kāi)始考試,同時(shí)系統(tǒng)紀(jì)錄考生狀態(tài)為”1”. 使用者考試,完成後按下”結(jié)算成績(jī)”,同時(shí)系統(tǒng)顯示紀(jì)錄考生該科分?jǐn)?shù),同時(shí)清除考生登入狀態(tài),使其無(wú)法重覆考試,老師並可查詢(xún)考生成績(jī).
上傳時(shí)間: 2016-07-31
上傳用戶(hù):chens000
蟲(chóng)蟲(chóng)下載站版權(quán)所有 京ICP備2021023401號(hào)-1