




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
倒推法
2024/7/12
of158例樓梯上有n階臺階,上樓可以一步上1階,也可以一步上2階,編寫算法計算共有多少種不同的上樓梯方法。只有兩種情況:
1)
從第n-1階到第n階;
2)
從第n-2階到第n階。記n階臺階的走法數為f(n),則
f(n)=1n=1
f(n)=2
n=2
f(n)=f(n-1)+f(n-2)n>22024/7/13
of158main(){intn:;print('n=');input(n);print('f(',n,')=',f(n));}f(intx){if(x=1)
return(1);if(x=2)return(2);else
return(f(x-1)+f(x-2));}2024/7/14
of158例:有兩條完全相同的蚊香,每個可以點一個小時,問怎樣量出45分鐘?2024/7/15
of158有一位探險家用5天的時間徒步橫穿A、B兩村,兩村間是荒無人煙的沙漠,如果一個人只能擔負3天的食物和水,那么這個探險家至少雇幾個人才能順利通過沙漠。
2024/7/16
of158
A城雇用一人與探險家同帶3天食物同行一天,然后被雇人帶一天食物返回,并留一天食物給探險家,這樣探險家正好有3天的食物繼續前行,并于第三天打電話雇B城人帶3天食物出發,第四天會面他們會面,探險家得到一天的食物赴B城。
隨機化算法2024/7/18
of158定義:在算法中引入隨機因素,即通過隨機數選擇算法的下一步操作。特點:簡單、快速一種平衡:隨機算法可以理解為在時間、空間和隨機三大計算資源中的平衡2024/7/19
of158計算機產生隨機數的方法d0=d
dn=bdn-1+can=dn%655362024/7/110
of158計算機產生隨機數的方法unsignedintseed;
scanf("%d",&seed);
srand(seed);
for(i=0;i<MAX;i++){
printf("%d",rand()%10+1);}2024/7/111
of158計算機產生隨機數的方法srand((unsigned)time(0));
for(inti=0;i<MAX;i++){
printf("%d",rand()%10+1);}2024/7/112
of1581、數值概率算法:用于數值問題的求解2、Sherwood算法一定能得到問題的正確解常見的四類隨機算法:2024/7/113
of1583、LasVegas算法或者得到正確的解,或者得不到解。4、MonteCarlo算法一定能得到解,但是得到的解可能不正確,然而這種概率是小的且有界的。常見的四類隨機算法:數值概率算法2024/7/115
of158用隨機投點法計算
值設有一半徑為r的圓及其外切四邊形。向該正方形隨機地投擲n個點。設落入圓內的點數為k。由于所投入的點在正方形上均勻分布,因而所投入的點落入圓內的概率為。所以當n足夠大時,k與n之比就逼近這一概率。從而。publicstaticdoubledarts(intn){//用隨機投點法計算
值
intk=0;for(inti=1;i<=n;i++){doublex=dart.fRandom();doubley=dart.fRandom();if((x*x+y*y)<=1)k++;}return4*k/(double)n;}2024/7/116
of158舉例:QuickSort傳統的快排序算法
-總是取第一個元素作為劃分元;
-算法的最壞運行時間是O(n2),平均時間是O(nlogn);-因此存在一些輸入實例,使得算法達到最長運行時間,如:降序的序列;隨機快排序算法
-隨機選擇一個元素作為劃分元;
-任何一個輸入的期望時間是O(nlogn);-是一個舍伍德算法;2024/7/117
of158舉例:八后問題對于大部分解,八后的位置并不具有系統性-因此可以隨機地把它們放在連續的行上,只要注意不要互相威脅。但是可能會失敗。解決方案:隨機+回溯2024/7/118
of158主元素問題設T[1…n]是一個含有n個元素的數組。當|{i|{T[i]=x}}|>n/2時,稱元素x為數組T的主元素。
majority(int
t[],intn){
隨機產生整數i;
intx=t[i];
intk=0;
for(intj=1;j<=n;j++)
if(t[j]==x)k++;
return(k>n/2);}
2024/7/119
of158主元素問題majority2返回true的概率是p+(1-p)p=1-(1-p)2>3/4majority2(intt[],intn){if(majority(t,n))returntrue; elsereturnmajority(t,n);}
2024/7/120
of158主元素問題2024/7/121
of158主元素問題設T[1:n]是一個含有n個元素的數組。當|{i|T[i]=x}|>n/2時,稱元素x是數組T的主元素。publicstaticboolean
majority(int[]t,intn){//判定主元素的蒙特卡羅算法
rnd=newRandom();
inti=rnd.random(n)+1;
intx=t[i];//隨機選擇數組元素
intk=0;for(intj=1;j<=n;j++)if(t[j]==x)k++;return(k>n/2);//k>n/2時t含有主元素
}publicstaticboolean
majorityMC(int[]t,intn,doublee){//重復éù次調用算法majority
intk=(int)Math.ceil(Math.log(1/e)/Math.log(2));for(inti=1;i<=k;i++)if(majority(t,n))returntrue;returnfalse;}對于任何給定的
>0,算法majorityMC重復調用
log(1/)
次算法majority。它是一個偏真蒙特卡羅算法,且其錯誤概率小于
。算法majorityMC所需的計算時間顯然是O(nlog(1/))。2024/7/122
of158素數測試Wilson定理:對于給定的正整數n,判定n是一個素數的充要條件是(n-1)!
-1(modn)。費爾馬小定理:如果p是一個素數,且0<a<p,則ap-1(modp)。二次探測定理:如果p是一個素數,且0<x<p,則方程x2
1(modp)的解為x=1,p-1。privatestaticint
power(inta,intp,intn){//計算apmodn,并實施對n的二次探測
intx,result;if(p==0)result=1;else{x=power(a,p/2,n);//遞歸計算
result=(x*x)%n;//二次探測
if((result==1)&&(x!=1)&&(x!=n-1))composite=true;if((p%2)==1)//p是奇數
result=(result*a)%n;}returnresult;}publicstaticboolean
prime(intn){//素數測試的蒙特卡羅算法
rnd=newRandom();
inta,result;composite=false;a=rnd.random(n-3)+2;result=power(a,n-1,n);if(composite||(result!=1))returnfalse;elsereturntrue;}算法prime是一個偏假3/4正確的蒙特卡羅算法。通過多次重復調用錯誤概率不超過(1/4)k。這是一個很保守的估計,實際使用的效果要好得多。2024/7/123
of158算法導論RSA公鑰加密系統
2024/7/125
of158反復平方法求數的冪2024/7/126
of158RSA1.Selectatrandomtwolargeprimenumberspandqsuchthatp≠
q.2.Computenbytheequationn=pq.3.Selectasmalloddintegerethatisrelativelyprimetoφ(n),equals(p-1)(q-1)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年審計實務試題及答案
- 2023年中國能建部分所屬企業領導人員招聘(競聘)筆試參考題庫附帶答案詳解
- 白酒釀造過程中的工藝傳承與創新考核試卷
- 紙張油墨吸收性考核試卷
- 皮革護理的文化價值傳播與推廣考核試卷
- 2024年微生物檢驗技師考試指導及試題及答案
- 棉花倉儲員工職業素養培訓考核試卷
- 糧油市場渠道開發與維護策略考核試卷
- 相機拍攝模式創新與應用考核試卷
- 2024年項目管理軟技能的重要性試題及答案
- 醫療器械安全知識培訓
- 2024-2025學年廣東省高三上學期期末四校聯考英語試題(解析版)
- 工地試驗室管理經驗交流
- 2025年全國普通話水平測試50套復習題庫及答案
- 破釜沉舟成語故事課件全
- 《實驗室生物安全》課件
- 攝影師經紀人合作合同
- 手術室手衛生PDCA
- DB31∕T 1038-2017 生態公益林主要造林樹種苗木質量分級
- 【培訓課件】跨境服務免稅政策及管理解讀
- 統編版語文四年級上冊期末復習- 一字多義專項選擇題(含答案)
評論
0/150
提交評論