LCS(最長公共子序列)問題可以簡單地描述如下: 一個給定序列的子序列是在該序列中刪去若干元素后得到的序列。給定兩個序列X和Y,當另一序列Z既是X的子序列又是Y的子序列時,稱Z是序列X和Y的公共子序列。例如,若X={A,B,C,B,D,B,A},Y={B,D,C,A,B,A},則序列{B,C,A}是X和Y的一個公共子序列,但它不是X和Y的一個最長公共子序列。序列{B,C,B,A}也是X和Y的一個公共子序列,它的長度為4,而且它是X和Y的一個最長公共子序列,因為X和Y沒有長度大于4的公共子序列。 最長公共子序列問題就是給定兩個序列X={x1,x2,...xm}和Y={y1,y2,...yn},找出X和Y的一個最長公共子序列。對于這個問題比較容易想到的算法是窮舉,對X的所有子序列,檢查它是否也是Y的子序列,從而確定它是否為X和Y的公共子序列,并且在檢查過程中記錄最長的公共子序列。X的所有子序列都檢查過后即可求出X和Y的最長公共子序列。X的每個子序列相應于下標集{1,2,...,m}的一個子集。因此,共有2^m個不同子序列,從而窮舉搜索法需要指數時間。
上傳時間: 2015-06-09
上傳用戶:氣溫達上千萬的
求取一幅灰度圖像中的光斑形心的位置的Matlab的源代碼。算法使用的是最大類間方差法編寫的程序,可以得到光斑形心位置的(x,y)坐標。
上傳時間: 2014-09-02
上傳用戶:bibirnovis
* 本算法用最小二乘法依據指定的M個基函數及N個已知數據進行曲線擬和 * 輸入: m--已知數據點的個數M * f--M維基函數向量 * n--已知數據點的個數N-1 * x--已知數據點第一坐標的N維列向量 * y--已知數據點第二坐標的N維列向量 * a--無用 * 輸出: 函數返回值為曲線擬和的均方誤差 * a為用基函數進行曲線擬和的系數, * 即a[0]f[0]+a[1]f[1]+...+a[M]f[M].
上傳時間: 2015-07-26
上傳用戶:
VC+MO最短路徑算法 // 計算線的幾何長度 double CalcLength() // 通過線的id得到線數據 BOOL GetLineData(int id) // 得到距離某點最近的線段,返回該線段的id int GetNearestLineData( double x, double y) // 判斷兩點是否重合 BOOL IsPtCoincide( NetPoint ptFirst, NetPoint ptSecond ) // 得到最鄰近的點
標簽: GetLineData CalcLength double BOOL
上傳時間: 2015-08-28
上傳用戶:lizhen9880
用用改進歐拉法解常微分方程的問題,并應用該算法于實際問題.并在程序結果路比較用表列出近似解yi,準確解y(i)
上傳時間: 2014-08-03
上傳用戶:sclyutian
黑白點的匹配貪心算法 設平面上分布著n個白點和n個黑點,每個點用一對坐標(x, y)表示。一個黑點b=(xb,yb)支配一個白點w=(xw, yw)當且僅當xb>=xw和yb>=yw。若黑點b支配白點w,則黑點b和白點w可匹配(可形成一個匹配對)。在一個黑點最多只能與一個白點匹配,一個白點最多只能與一個黑點匹配的前提下,求n個白點和n個黑點的最大匹配對數。
上傳時間: 2015-10-25
上傳用戶:zhliu007
拉格朗日插值算法,輸入[x0 x1 x2]和對應的[y0 y1 y2],按拉格朗日插值發計算出[x0 x2]之間任何一個X所對應的Y值
上傳時間: 2013-12-29
上傳用戶:miaochun888
圖的廣度優先遍歷算法,c 語 言實現
標簽: 算法
上傳時間: 2016-03-20
上傳用戶:jjj0202
Digital Signature Algorithm (DSA)是Schnorr和ElGamal簽名算法的變種,被美國NIST作為DSS(DigitalSignature Standard)。算法中應用了下述參數: p:L bits長的素數。L是64的倍數,范圍是512到1024; q:p - 1的160bits的素因子; g:g = h^((p-1)/q) mod p,h滿足h < p - 1, h^((p-1)/q) mod p > 1; x:x < q,x為私鑰 ; y:y = g^x mod p ,( p, q, g, y )為公鑰; H( x ):One-Way Hash函數。DSS中選用SHA( Secure Hash Algorithm )。 p, q, g可由一組用戶共享,但在實際應用中,使用公共模數可能會帶來一定的威脅。簽名及驗證協議如下: 1. P產生隨機數k,k < q; 2. P計算 r = ( g^k mod p ) mod q s = ( k^(-1) (H(m) + xr)) mod q 簽名結果是( m, r, s )。 3. 驗證時計算 w = s^(-1)mod q u1 = ( H( m ) * w ) mod q u2 = ( r * w ) mod q v = (( g^u1 * y^u2 ) mod p ) mod q 若v = r,則認為簽名有效。 DSA是基于整數有限域離散對數難題的,其安全性與RSA相比差不多。DSA的一個重要特點是兩個素數公開,這樣,當使用別人的p和q時,即使不知道私鑰,你也能確認它們是否是隨機產生的,還是作了手腳。RSA算法卻作不到。
標簽: Algorithm Signature Digital Schnorr
上傳時間: 2014-01-01
上傳用戶:qq521
MATLAB實現的一種基于最小二乘的橢圓擬合直接算法源代碼.附件中的源代碼是matlab編寫的,實現一種對于橢圓的穩定的數據擬合算法。當然必須要提供至少5個點的數據,橢圓x,y軸的中心點,最大軸最小軸
上傳時間: 2016-07-31
上傳用戶:huangld