安徽大學演算法簡答

2022-12-27 01:27:02 字數 1512 閱讀 2747

分治法的基本思想:將乙個規模為n的問題分解為k個規模較小的子問題,這些子問題互相獨立且與原問題相同。遞迴地解這些問題,然後將各個子問題的解合併成原問題的解。

分治法在每一層遞迴上都有三個步驟:

分解:將原問題分解為若干個規模較小,相互獨立,與原問題形式相同的子問題;

解決:若子問題規模較小而容易被解決則直接解,否則遞迴地解各個子問題;

合併:將各個子問題的解合併為原問題的解。

遞迴分治法在密碼學中的應用:在處理很大整數時,硬體無法直接表示和處理。而用浮點數來表示則只能近似值,計算結果中的有效數字也受到限制。

若要精確地表示大整數並在計算結果中要求精確地得到所有位數上的數字,必須用軟體方法來實現大整數的算術運算。

大整數相乘的分治演算法:

function mult(x,y,n) }

動態規劃法基本思想:動態規劃( dynamic programming )演算法是解決多階段決策過程最優化問題的一種常用方法,難度比較大,技巧性也很強。利用動態規劃演算法,可以優雅而高效地解決很多貪婪演算法或分治演算法不能解決的問題。

動態規劃演算法的基本思想是:將待求解的問題分解成若干個相互聯絡的子問題,先求解子問題,然後從這些子問題的解得到原問題的解;對於重複出現的子問題,只在第一次遇到的時候對它進行求解,並把答案儲存起來,讓以後再次遇到時直接引用答案,不必重新求解。

通常可以按照以下步驟設計動態規劃演算法:

1 、分析問題的最優解,找出最優解的性質,並刻畫其結構特徵;

2 、遞迴地定義最優值;

3 、採用自底向上的方式計算問題的最優值;

4 、根據計算最優值時得到的資訊,構造最優解。

動態規劃法在密碼學中的應用:

若兩個正整數的和為素數,則這兩個正整數稱之為「素數伴侶」,如2和5、6和13,它們能應用於通訊加密。從已有的n(n為偶數)個正整數中挑選出若干對組成「素數伴侶」,挑選方案多種多樣,例如有4個正整數:2,5,6,13,如果將5和6分為一組中只能得到一組「素數伴侶」,而將2和5、6和13編組將得到兩組「素數伴侶」,能組成「素數伴侶」最多的方案稱為「最佳方案」,當然密碼學會希望你尋找出「最佳方案」。

樣例;輸出: 求得的「最佳方案」組成「素數伴侶」的對數。

樣例輸入:

42 5 6 13

樣例輸出:

2 利用動態規劃解題,dp[i]表示0-i最多有的伴侶數;

當dp[i]+dp[j]為素數。dp[i]+dp[j] = dp[i-1]+dp[j-1]+1;由於伴侶數成對出現,必然只能在i-1和j-1的基礎上出現一對。當dp[i]+dp[j]不為素數,dp[i]=dp[i-1]故狀態轉移方程就如上確定了。

#include

#include

using namespace std;

bool isprime(int n)

return true;

} int primepairs(vector &vi)

return dp[n-2];

} int main()

cout << primepairs(v);

return 0;}

安徽大學簡歷

姓名 杜宗飛 學院 數理資訊學院 專業 電腦科學與技術 師範 學歷 本科 手機寢室 e mail 位址 浙江省杭州郵編 321004 自薦信尊敬的領導 您好!今天我懷著對人生事業的追求,懷著激動的心情向您毛遂自薦,希望您在百忙之中給予我片刻的關注。我是 大學電腦科學與技術專業的2014屆畢業生。大學...

2019安徽大學管理學試題

2011年招收攻讀碩士學位研究生入學考試試題 一 名詞解釋題 1.社會責任 2.系統管理理論 3.組織扁平化 4.組織文化 5.戰術決策 6.顧客部門化 二 單項選擇題 1.如果管理者非常重視組織成員的滿意程度,則 溝通網路是最有效的。a.輪式 b.全通道式 c.小道訊息 d.鏈式 2.假如你是某公...

安徽大學學生會例會制度

第一條主席團例會由主席召集主持,秘書負責會議記錄,調研處負責例會監督,各部處均需出席例會,並在例會上總結上一周的工作情況,闡明下一周的工作計畫。對於學生會碰到的問題,在例會上群策群力,採取民主集中制原則來共同商量解決,對於一時無法解決的問題,會議應指定專人在會後作專門研究,在下次例會上再提出討論。第...