-
題目:古典問題:有一對兔子,從出生后第3個月起每個月都生一對兔子,小兔子長到第三個月后每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數為多少?
//這是一個菲波拉契數列問題
public class lianxi01 {
public static void main(String[] args) {
System.out.println("第1個月的兔子對數: 1");
System.out.println("第2個月的兔子對數: 1");
int f1 = 1, f2 = 1, f, M=24;
for(int i=3; i<=M; i++) {
f = f2;
f2 = f1 + f2;
f1 = f;
System.out.println("第" + i +"個月的兔子對數: "+f2);
}
}
}
【程序2】
題目:判斷101-200之間有多少個素數,并輸出所有素數。
程序分析:判斷素數的方法:用一個數分別去除2到sqrt(這個數),如果能被整除, 則表明此數不是素數,反之是素數。
public class lianxi02 {
public static void main(String[] args) {
int count = 0;
for(int i=101; i<200; i+=2) {
boolean b = false;
for(int j=2; j<=Math.sqrt(i); j++)
{
if(i % j == 0) { b = false; break; }
else { b = true; }
}
if(b == true) {count ++;System.out.println(i );}
}
System.out.println( "素數個數是: " + count);
}
}
【程序3】
題目:打印出所有的 "水仙花數 ",所謂 "水仙花數 "是指一個三位數,其各位數字立方和等于該數本身。例如:153是一個 "水仙花數 ",因為153=1的三次方+5的三次方+3的三次方。
public class lianxi03 {
public static void main(String[] args) {
int b1, b2, b3;
標簽:
java
編程
上傳時間:
2017-12-24
上傳用戶:Ariza
-
Hopfield 網——擅長于聯想記憶與解迷路 實現H網聯想記憶的關鍵,是使被記憶的模式樣本對應網絡能量函數的極小值。 設有M個N維記憶模式,通過對網絡N個神經元之間連接權 wij 和N個輸出閾值θj的設計,使得: 這M個記憶模式所對應的網絡狀態正好是網絡能量函數的M個極小值。 比較困難,目前還沒有一個適應任意形式的記憶模式的有效、通用的設計方法。 H網的算法 1)學習模式——決定權重 想要記憶的模式,用-1和1的2值表示 模式:-1,-1,1,-1,1,1,... 一般表示: 則任意兩個神經元j、i間的權重: wij=∑ap(i)ap(j),p=1…p; P:模式的總數 ap(s):第p個模式的第s個要素(-1或1) wij:第j個神經元與第i個神經元間的權重 i = j時,wij=0,即各神經元的輸出不直接返回自身。 2)想起模式: 神經元輸出值的初始化 想起時,一般是未知的輸入。設xi(0)為未知模式的第i個要素(-1或1) 將xi(0)作為相對應的神經元的初始值,其中,0意味t=0。 反復部分:對各神經元,計算: xi (t+1) = f (∑wijxj(t)-θi), j=1…n, j≠i n—神經元總數 f()--Sgn() θi—神經元i發火閾值 反復進行,直到各個神經元的輸出不再變化。
標簽:
Hopfield
聯想
上傳時間:
2015-03-16
上傳用戶:JasonC
-
詞法分析程序,可對以下的C源程序進行分析: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) }
標簽:
分
程序
上傳時間:
2013-12-26
上傳用戶:skhlm
-
算法介紹
矩陣求逆在程序中很常見,主要應用于求Billboard矩陣。按照定義的計算方法乘法運算,嚴重影響了性能。在需要大量Billboard矩陣運算時,矩陣求逆的優化能極大提高性能。這里要介紹的矩陣求逆算法稱為全選主元高斯-約旦法。
高斯-約旦法(全選主元)求逆的步驟如下:
首先,對于 k 從 0 到 n - 1 作如下幾步:
從第 k 行、第 k 列開始的右下角子陣中選取絕對值最大的元素,并記住次元素所在的行號和列號,在通過行交換和列交換將它交換到主元素位置上。這一步稱為全選主元。
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
最后,根據在全選主元過程中所記錄的行、列交換的信息進行恢復,恢復的原則如下:在全選主元過程中,先交換的行(列)后進行恢復;原來的行(列)交換用列(行)交換來恢復。
標簽:
算法
矩陣求逆
程序
上傳時間:
2015-04-09
上傳用戶:wang5829
-
一個簡單的類似鋼琴的游戲,能夠發出3個8度音,
低音:1~7;
中音:Q~U或q~u;
高音:A~J或a~j;
標簽:
鋼琴
上傳時間:
2015-06-09
上傳用戶:784533221
-
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
-
求標準偏差
> 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
標簽:
gt
myfunction
function
numel
上傳時間:
2014-01-15
上傳用戶:hongmo
-
求標準偏差
> 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
標簽:
gt
myfunction
function
numel
上傳時間:
2013-12-26
上傳用戶:dreamboy36
-
求標準偏差
> 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
標簽:
gt
myfunction
function
numel
上傳時間:
2016-06-28
上傳用戶:change0329
-
求標準偏差
> 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
標簽:
gt
myfunction
function
numel
上傳時間:
2014-09-03
上傳用戶:jjj0202