看板 NCTU-STAT100 關於我們 聯絡資訊
Step 1: for k= 0 : n-1 do Step 2 ~ Step 6 Step 2: (is[k], js[k]) = arg max{ |a(i,j)| | i = k:n-1, j = k:n-1 } (i,j) Step 3: if( | a(is[k], js[k]) | < eps ) then stop else do Step 4 ~ Step 6 Step 4: if( is[k] != k ) then a(k,:) <=> a(is[i],:) if( js[k] != k ) then a(:,k) <=> a(:,js[k]) Step 5: a(k,k) = 1.0 / a(k,k) for j = 0 : n-1 ; j != k // 注意這裡的 j != k 意指 j 要跳過 k do a(k,j) = a(k,j) * a(k,k) Step 6: for i = 0 : n-1 ; i != k for j = 0 : n-1 ; j != k a(i,j) = a(i,j) - a(i,k) * a(k,j) for i = 0 : n-1 ; i != k a(i,k) = - a(i,k) * a(k,k) Step 7: for k = n-1 : 0 for l = 0 : n-1 a(k,l) <=> a(js[k],l) a(l,k) <=> a(l,is[k]) 請同學們多多瞭解為什麼這個程式能 work, 在使用它時, 信心就會多一點. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.233.7.208
gentlecat:推薦這個認真的學長XD 07/28 22:58
PanJC:大家都很認真, 加油 07/29 06:28
sukotoko:謝謝學長:) 07/30 20:25
gentlecat:可以問一下STEP5~7的意思嗎? 有點看不太懂@@ 08/01 00:56