-
LCS(最長公共子序列)問題可以簡單地描述如下:
一個給定序列的子序列是在該序列中刪去若干元素后得到的序列。給定兩個序列X和Y,當(dāng)另一序列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的每個子序列相應(yīng)于下標(biāo)集{1,2,...,m}的一個子集。因此,共有2^m個不同子序列,從而窮舉搜索法需要指數(shù)時間。
標(biāo)簽:
序列
LCS
元素
上傳時間:
2015-06-09
上傳用戶:氣溫達(dá)上千萬的
-
上下文無關(guān)文法(Context-Free Grammar, CFG)是一個4元組G=(V, T, S, P),其中,V和T是不相交的有限集,S∈V,P是一組有限的產(chǎn)生式規(guī)則集,形如A→α,其中A∈V,且α∈(V∪T)*。V的元素稱為非終結(jié)符,T的元素稱為終結(jié)符,S是一個特殊的非終結(jié)符,稱為文法開始符。
設(shè)G=(V, T, S, P)是一個CFG,則G產(chǎn)生的語言是所有可由G產(chǎn)生的字符串組成的集合,即L(G)={x∈T* | Sx}。一個語言L是上下文無關(guān)語言(Context-Free Language, CFL),當(dāng)且僅當(dāng)存在一個CFG G,使得L=L(G)。 *⇒
例如,設(shè)文法G:S→AB
A→aA|a
B→bB|b
則L(G)={a^nb^m | n,m>=1}
其中非終結(jié)符都是大寫字母,開始符都是S,終結(jié)符都是小寫字母。
標(biāo)簽:
Context-Free
Grammar
CFG
上傳時間:
2013-12-10
上傳用戶:gaojiao1999
-
This edition updates and continues the series of books based on the residential
courses on radiowave propagation organised by the IEE/IET.
The first course was held in 1974, with lectures by H. Page, P. Matthews,
D. Parsons, M.W. Gough, P.A. Watson, E. Hickin, T. Pratt, P. Knight, T.B. Jones,
P.A. Bradley, B. Burgess and H. Rishbeth.
標(biāo)簽:
Propagation
Radiowaves
edition
3rd
of
上傳時間:
2020-05-31
上傳用戶:shancjb
-
設(shè)計了一種基于兩片AVR單片機(jī)的交通誘導(dǎo)屏顯示單元控制系統(tǒng),該系統(tǒng)由通信模塊、顯示控制模塊和開關(guān)模塊3部分組成。單片機(jī)A用于以RS-485的通信方式接收數(shù)據(jù)和應(yīng)答主機(jī),把處理好的數(shù)據(jù)發(fā)送到I/O口并寫入EEPROM中,再通知單片機(jī)B讀取數(shù)據(jù)。單片機(jī)B接收到數(shù)據(jù)后控制LED顯示,通過調(diào)節(jié)驅(qū)動LED電流占空比的方式調(diào)節(jié)LED的亮度。給出了控制系統(tǒng)的硬件和軟件設(shè)計方案。
標(biāo)簽:
AVR
顯示單元
控制系統(tǒng)設(shè)計
上傳時間:
2013-10-13
上傳用戶:wenyuoo
-
利用桶排序給數(shù)組a排序,建立的桶為b和e,其中b為含有十萬個桶,e為只有一個鏈表的桶,然后對b和e使用插入算法排序,比較兩種算法的時間,b需要40毫秒左右,e需要9到10分鐘。
標(biāo)簽:
排序
數(shù)組
上傳時間:
2014-01-02
上傳用戶:13681659100
-
源代碼\用動態(tài)規(guī)劃算法計算序列關(guān)系個數(shù)
用關(guān)系"<"和"="將3個數(shù)a,b,c依次序排列時,有13種不同的序列關(guān)系:
a=b=c,a=b<c,a<b=v,a<b<c,a<c<b
a=c<b,b<a=c,b<a<c,b<c<a,b=c<a
c<a=b,c<a<b,c<b<a
若要將n個數(shù)依序列,設(shè)計一個動態(tài)規(guī)劃算法,計算出有多少種不同的序列關(guān)系,
要求算法只占用O(n),只耗時O(n*n).
標(biāo)簽:
lt
源代碼
動態(tài)規(guī)劃
序列
上傳時間:
2013-12-26
上傳用戶:siguazgb
-
c語言版的多項式曲線擬合。
用最小二乘法進(jìn)行曲線擬合.
用p-1 次多項式進(jìn)行擬合,p<= 10
x,y 的第0個域x[0],y[0],沒有用,有效數(shù)據(jù)從x[1],y[1] 開始
nNodeNum,有效數(shù)據(jù)節(jié)點的個數(shù)。
b,為輸出的多項式系數(shù),b[i] 為b[i-1]次項。b[0],沒有用。
b,有10個元素ok。
標(biāo)簽:
多項式
曲線擬合
c語言
最小二乘法
上傳時間:
2014-01-12
上傳用戶:變形金剛
-
高精度乘法基本思想和加法一樣。其基本流程如下:
①讀入被乘數(shù)s1,乘數(shù)s2
②把s1、s2分成4位一段,轉(zhuǎn)成數(shù)值存在數(shù)組a,b中;記下a,b的長度k1,k2;
③i賦為b中的最低位;
④從b中取出第i位與a相乘,累加到另一數(shù)組c中;(注意:累加時錯開的位數(shù)應(yīng)是多少位
?)
⑤i:=i-1;檢測i值:小于k2則轉(zhuǎn)⑥,否則轉(zhuǎn)④
⑥打印結(jié)果
標(biāo)簽:
高精度
乘法
加法
基本流程
上傳時間:
2015-08-16
上傳用戶:源弋弋
-
[輸入]
圖的頂點個數(shù)N,圖中頂點之間的關(guān)系及起點A和終點B
[輸出]
若A到B無路徑,則輸出“There is no path” 否則輸出A到B路徑上個頂點
[存儲結(jié)構(gòu)]
圖采用鄰接矩陣的方式存儲。
[算法的基本思想]
采用廣度優(yōu)先搜索的方法,從頂點A開始,依次訪問與A鄰接的頂點VA1,VA2,...,VAK, 訪問遍之后,若沒有訪問B,則繼續(xù)訪問與VA1鄰接的頂點VA11,VA12,...,VA1M,再訪問與VA2鄰接頂點...,如此下去,直至找到B,最先到達(dá)B點的路徑,一定是邊數(shù)最少的路徑。實現(xiàn)時采用隊列記錄被訪問過的頂點。每次訪問與隊頭頂點相鄰接的頂點,然后將隊頭頂點從隊列中刪去。若隊空,則說明到不存在通路。在訪問頂點過程中,每次把當(dāng)前頂點的序號作為與其鄰接的未訪問的頂點的前驅(qū)頂點記錄下來,以便輸出時回溯。
#include<stdio.h>
int number //隊列類型
typedef struct{
int q[20]
標(biāo)簽:
輸入
上傳時間:
2015-11-16
上傳用戶:ma1301115706
-
the calculator s usage!
after you have inputed 2 operators,choose + - * / function!
But the only situation I did t deal with is that
when you choos + fuction ,and the operaters signs is like this
-A+B,just turn it to B-A!
標(biāo)簽:
calculator
the
operators
function
上傳時間:
2016-02-12
上傳用戶:lili123