代入法的啟發(fā)示搜索 我的代碼實(shí)現(xiàn)是:按照自然語(yǔ)言各字母出現(xiàn)頻率的大小從高到低(已經(jīng)有人作國(guó)統(tǒng)計(jì)分析了)先生成一張字母出現(xiàn)頻率統(tǒng)計(jì)表(A)--------(e),(t,a,o,i,n,s,h,r),(d,l),(c,u,m,w,f,g,y,p,b),(v,k,j,x,q,z) ,再對(duì)密文字母計(jì)算頻率,并按頻率從高到低生成一張輸入密文字母的統(tǒng)計(jì)表(B),通過(guò)兩張表的對(duì)應(yīng)關(guān)系,不斷用A中的字母去替換B中的字母,搜索不成功時(shí)就回退,在這里回朔是一個(gè)關(guān)鍵。
上傳時(shí)間: 2015-10-24
上傳用戶:wanqunsheng
Ex4-22 單射函數(shù)問(wèn)題 « 問(wèn)題描述: 設(shè)函數(shù)f將點(diǎn)集S = {0,1, , n -1}映射為f (S) = { f (i) | iÎ S} Í S 。單射函數(shù)問(wèn)題要 從S中選取最大子集X Í S 使f (X )是單射函數(shù)。 例如,當(dāng)n=7, f (S) = {1,0,0,2,2,3,6} Í S 時(shí), X = {0,1,6} Í S 是所求的最大子集。 « 編程任務(wù): 對(duì)于給定的點(diǎn)集S = {0,1, , n -1}上函數(shù)f,試用抽象數(shù)據(jù)類(lèi)型隊(duì)列,設(shè)計(jì)一個(gè)O(n)時(shí) 間算法,計(jì)算f的最大單射子集。 « 數(shù)據(jù)輸入: 由文件input.txt 提供輸入數(shù)據(jù)。文件的第1 行有1 個(gè)正整數(shù)n,表示給定的點(diǎn)集 S = {0,1, , n -1}。第2 行是f (i)的值,0 £ i < n。 « 結(jié)果輸出: 程序運(yùn)行結(jié)束時(shí),將計(jì)算出的f的最大單射子集的大小輸出到output.txt中。 輸入文件示例 輸出文件示例 input.txt 7 1 0 0 2 2 3 6 output.txt 3
標(biāo)簽: Iacute 61516 laquo Icirc
上傳時(shí)間: 2016-05-28
上傳用戶:tyler
Java: 在n 張撲克牌中找出順子 題目是這樣的:有n張撲克牌,每張牌的取值范圍是:2,3,4,5,6,7,8,9,10,J,Q,K,A。在這n張牌中找出順子(5張及5張以上的連續(xù)的牌),并將這些順子打印出來(lái)。 思路:我的思路其實(shí)很簡(jiǎn)單,首先就是要去掉重復(fù)的牌,因?yàn)橥瑯拥捻樧又阋粋€(gè),顯然JAVA中的Set很適合這個(gè)工作。同時(shí)又需要對(duì)這些牌進(jìn)行排序,毫無(wú)疑問(wèn)就是TreeSet了。然后從小到大遍歷這些牌,并設(shè)置一個(gè)計(jì)數(shù)器count。若發(fā)現(xiàn)連續(xù)的牌,則count++;若發(fā)現(xiàn)不連續(xù)的,分2中情況:若count>4,則找到了一個(gè)順子,存起來(lái);反之則什么都不做。然后count=1,從新開(kāi)始找順子。下面就是代碼:
標(biāo)簽: Java
上傳時(shí)間: 2013-12-22
上傳用戶:hewenzhi
在一個(gè)操場(chǎng)的四周擺放著n 堆石子。現(xiàn)要將石子有次序地合并成一堆。規(guī)定在合并過(guò)程 中最多可以有m(k)次選k 堆石子合并成新的一堆,2≤k≤n,合并的費(fèi)用為新的一堆的石子 數(shù)。試設(shè)計(jì)一個(gè)算法,計(jì)算出將n 堆石子合并成一堆的最小總費(fèi)用。
上傳時(shí)間: 2013-12-13
上傳用戶:cc1015285075
Euler函數(shù): m = p1^r1 * p2^r2 * …… * pn^rn ai >= 1 , 1 <= i <= n Euler函數(shù): 定義:phi(m) 表示小于等于m并且與m互質(zhì)的正整數(shù)的個(gè)數(shù)。 phi(m) = p1^(r1-1)*(p1-1) * p2^(r2-1)*(p2-1) * …… * pn^(rn-1)*(pn-1) = m*(1 - 1/p1)*(1 - 1/p2)*……*(1 - 1/pn) = p1^(r1-1)*p2^(r2-1)* …… * pn^(rn-1)*phi(p1*p2*……*pn) 定理:若(a , m) = 1 則有 a^phi(m) = 1 (mod m) 即a^phi(m) - 1 整出m 在實(shí)際代碼中可以用類(lèi)似素?cái)?shù)篩法求出 for (i = 1 i < MAXN i++) phi[i] = i for (i = 2 i < MAXN i++) if (phi[i] == i) { for (j = i j < MAXN j += i) { phi[j] /= i phi[j] *= i - 1 } } 容斥原理:定義phi(p) 為比p小的與p互素的數(shù)的個(gè)數(shù) 設(shè)n的素因子有p1, p2, p3, … pk 包含p1, p2…的個(gè)數(shù)為n/p1, n/p2… 包含p1*p2, p2*p3…的個(gè)數(shù)為n/(p1*p2)… phi(n) = n - sigm_[i = 1](n/pi) + sigm_[i!=j](n/(pi*pj)) - …… +- n/(p1*p2……pk) = n*(1 - 1/p1)*(1 - 1/p2)*……*(1 - 1/pk)
標(biāo)簽: Euler lt phi 函數(shù)
上傳時(shí)間: 2014-01-10
上傳用戶:wkchong
課程設(shè)計(jì): 1.求出在一個(gè)n×n的棋盤(pán)上,放置n個(gè)不能互相捕捉的國(guó)際象棋“皇后”的所有布局。 2.設(shè)計(jì)一個(gè)利用哈夫曼算法的編碼和譯碼系統(tǒng),重復(fù)地顯示并處理以下項(xiàng)目,直到選擇退出為止。 【基本要求】 1) 將權(quán)值數(shù)據(jù)存放在數(shù)據(jù)文件(文件名為data.txt,位于執(zhí)行程序的當(dāng)前目錄中) 2) 分別采用動(dòng)態(tài)和靜態(tài)存儲(chǔ)結(jié)構(gòu) 3) 初始化:鍵盤(pán)輸入字符集大小n、n個(gè)字符和n個(gè)權(quán)值,建立哈夫曼樹(shù); 4) 編碼:利用建好的哈夫曼樹(shù)生成哈夫曼編碼; 5) 輸出編碼; 6) 設(shè)字符集及頻度如下表: 字符 空格 A B C D E F G H I J K L M 頻度 186 64 13 22 32 103 21 15 47 57 1 5 32 20 字符 N O P Q R S T U V W X Y Z 頻度 57 63 15 1 48 51 80 23 8 18 1 16 1
標(biāo)簽:
上傳時(shí)間: 2017-04-24
上傳用戶:zhyiroy
開(kāi)關(guān)電源基本原理與設(shè)計(jì)介紹 ppt
標(biāo)簽: 開(kāi)關(guān)電源
上傳時(shí)間: 2013-07-24
上傳用戶:eeworm
新型智慧驅(qū)動(dòng)器可簡(jiǎn)化開(kāi)關(guān)電源隔離拓樸結(jié)構(gòu)中同步整流器
標(biāo)簽: 驅(qū)動(dòng) 開(kāi)關(guān)電源 同步整流器
上傳時(shí)間: 2013-06-05
上傳用戶:eeworm
專(zhuān)輯類(lèi)-開(kāi)關(guān)電源相關(guān)專(zhuān)輯-119冊(cè)-749M 開(kāi)關(guān)電源基本原理與設(shè)計(jì)介紹-62頁(yè)-2.3M-ppt.ppt
上傳時(shí)間: 2013-05-18
上傳用戶:lyy1234
(臺(tái)達(dá))開(kāi)關(guān)電源基本原理與設(shè)計(jì)介紹,比較實(shí)用
標(biāo)簽: 開(kāi)關(guān)電源
上傳時(shí)間: 2013-06-15
上傳用戶:ybysp008
蟲(chóng)蟲(chóng)下載站版權(quán)所有 京ICP備2021023401號(hào)-1