書 名:Programming Windows程式開發(fā)設(shè)計指南 出版日期:2000/6/2 書 號:957-8239-73-4 I S B N:957-8239-73-4 原 作 者:Charles Petzold 譯 者:余孟學(xué)
標簽: 8239 Programming 957 Windows
上傳時間: 2015-04-26
上傳用戶:xinyuzhiqiwuwu
本題的算法中涉及的三個函數(shù): double bbp(int n,int k,int l) 其中n為十六進制位第n位,k取值范圍為0到n+7,用來計算16nS1,16nS2,16nS3,16nS4小數(shù)部分的每一項。返回每一項的小數(shù)部分。 void pi(int m,int n,int p[]) 計算從n位開始的連續(xù)m位的十六進制數(shù)字。其中p為存儲十六進制數(shù)字的數(shù)組。 void div(int p[]) void add(int a[],int b[]) 這兩個函數(shù)都是為最后把十六進制數(shù)字轉(zhuǎn)換為十進制數(shù)字服務(wù)的。 最后把1000個數(shù)字分別存儲在整型數(shù)組r[]中,輸出就是按順序輸出該數(shù)組。
上傳時間: 2014-01-05
上傳用戶:xcy122677
Floyd-Warshall算法描述 1)適用范圍: a)APSP(All Pairs Shortest Paths) b)稠密圖效果最佳 c)邊權(quán)可正可負 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)算法結(jié)束:dis即為所有點對的最短路徑矩陣 3)算法小結(jié):此算法簡單有效,由于三重循環(huán)結(jié)構(gòu)緊湊,對于稠密圖,效率要高于執(zhí)行|V|次Dijkstra算法。時間復(fù)雜度O(n^3)。 考慮下列變形:如(I,j)∈E則dis[I,j]初始為1,else初始為0,這樣的Floyd算法最后的最短路徑矩陣即成為一個判斷I,j是否有通路的矩陣。更簡單的,我們可以把dis設(shè)成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
每組輸入是兩個整數(shù)n和k。(1 <= n <= 50, 1 <= k <= n) 對于每組輸入,請輸出四行。 第一行: 將n劃分成若干正整數(shù)之和的劃分數(shù)。 第二行: 將n劃分成最大數(shù)不超過k的劃分數(shù)。 第三行: 將n劃分成若干奇正整數(shù)之和的劃分數(shù)。 第四行: 將n劃分成若干不同整數(shù)之和的劃分數(shù)。
上傳時間: 2016-03-07
上傳用戶:腳趾頭
K-MEANS算法: k-means 算法接受輸入量 k ;然后將n個數(shù)據(jù)對象劃分為 k個聚類以便使得所獲得的聚類滿足:同一聚類中的對象相似度較高;而不同聚類中的對象相似度較小。聚類相似度是利用各聚類中對象的均值所獲得一個“中心對象”(引力中心)來進行計算的。 k-means 算法的工作過程說明如下:首先從n個數(shù)據(jù)對象任意選擇 k 個對象作為初始聚類中心;而對于所剩下其它對象,則根據(jù)它們與這些聚類中心的相似度(距離),分別將它們分配給與其最相似的(聚類中心所代表的)聚類;然后再計算每個所獲新聚類的聚類中心(該聚類中所有對象的均值);不斷重復(fù)這一過程直到標準測度函數(shù)開始收斂為止。一般都采用均方差作為標準測度函數(shù). k個聚類具有以下特點:各聚類本身盡可能的緊湊,而各聚類之間盡可能的分開
上傳時間: 2016-07-31
上傳用戶:youlongjian0
K-MEANS算法: k-means 算法接受輸入量 k ;然后將n個數(shù)據(jù)對象劃分為 k個聚類以便使得所獲得的聚類滿足:同一聚類中的對象相似度較高;而不同聚類中的對象相似度較小。聚類相似度是利用各聚類中對象的均值所獲得一個“中心對象”(引力中心)來進行計算的。 k-means 算法的工作過程說明如下:首先從n個數(shù)據(jù)對象任意選擇 k 個對象作為初始聚類中心;而對于所剩下其它對象,則根據(jù)它們與這些聚類中心的相似度(距離),分別將它們分配給與其最相似的(聚類中心所代表的)聚類;然后再計算每個所獲新聚類的聚類中心(該聚類中所有對象的均值);不斷重復(fù)這一過程直到標準測度函數(shù)開始收斂為止。一般都采用均方差作為標準測度函數(shù). k個聚類具有以下特點:各聚類本身盡可能的緊湊,而各聚類之間盡可能的分開
上傳時間: 2013-12-19
上傳用戶:chenlong
k-means 算法接受輸入量 k ;然后將n個數(shù)據(jù)對象劃分為 k個聚類以便使得所獲得的聚類滿足:同一聚類中的對象相似度較高;而不同聚類中的對象相似度較小。聚類相似度是利用各聚類中對象的均值所獲得一個“中心對象”(引力中心)來進行計算的。 Matlab 源代碼,以蘭花數(shù)據(jù)集作為測試對象。
上傳時間: 2014-01-21
上傳用戶:2525775
//Euler 函數(shù)前n項和 /* phi(n) 為n的Euler原函數(shù) if( (n/p) % i == 0 ) phi(n)=phi(n/p)*i else phi(n)=phi(n/p)*(i-1) 對于約數(shù):divnum 如果i|pr[j] 那么 divnum[i*pr[j]]=divsum[i]/(e[i]+1)*(e[i]+2) //最小素因子次數(shù)加1 否則 divnum[i*pr[j]]=divnum[i]*divnum[pr[j]] //滿足積性函數(shù)條件 對于素因子的冪次 e[i] 如果i|pr[j] e[i*pr[j]]=e[i]+1 //最小素因子次數(shù)加1 否則 e[i*pr[j]]=1 //pr[j]為1次 對于本題: 1. 篩素數(shù)的時候首先會判斷i是否是素數(shù)。 根據(jù)定義,當 x 是素數(shù)時 phi[x] = x-1 因此這里我們可以直接寫上 phi[i] = i-1 2. 接著我們會看prime[j]是否是i的約數(shù) 如果是,那么根據(jù)上述推導(dǎo),我們有:phi[ i * prime[j] ] = phi[i] * prime[j] 否則 phi[ i * prime[j] ] = phi[i] * (prime[j]-1) (其實這里prime[j]-1就是phi[prime[j]],利用了歐拉函數(shù)的積性) 經(jīng)過以上改良,在篩完素數(shù)后,我們就計算出了phi[]的所有值。 我們求出phi[]的前綴和 */
上傳時間: 2016-12-31
上傳用戶:gyq
ADT HuffmanTree{ 數(shù)據(jù)對象:D={ai| ai∈CharSet,i=1,2,……,n, n≥0} 數(shù)據(jù)關(guān)系:R={< ai-1, ai > ai-1, ai∈D, ai-1基本操作P: HuffmanTree() 構(gòu)造函數(shù) ~ HuffmanTree() 析構(gòu)函數(shù) Initialization(int WeightNum) 操作結(jié)果:構(gòu)造哈夫曼樹。 Encoder() 初始條件:哈夫曼樹已存在或者哈夫曼樹已存到文件中。 操作結(jié)果:對字符串進行編碼 Decoder() 初始條件:哈夫曼樹已存在且已編碼。 操作結(jié)果:對二進制串進行譯碼 Print() 初始條件:編碼文件已存在。 操作結(jié)果:把已保存好的編碼文件顯示在屏幕 TreePrinting() 初始條件:哈夫曼樹已存在。 操作結(jié)果:將已在內(nèi)存中的哈夫曼樹以直觀的方式顯示在終端上
標簽: ai HuffmanTree CharSet ADT
上傳時間: 2013-12-25
上傳用戶:changeboy
基本思想: 設(shè)所排序序列的記錄個數(shù)為n。i取1,2,…,n-1,從所有n-i+1個記錄(R,R[i+1],…,R[n]中找出排序碼最小的記錄,與第i個記錄交換。執(zhí)行n-1趟 后就完成了記錄序列的排序。
上傳時間: 2013-12-19
上傳用戶:kytqcool
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1