LCS的做備忘錄演算法

2021-06-22 15:53:58 字數 795 閱讀 3163

/*

輸入:兩個字串

輸出:最長公共子串行

演算法思想:自頂向下的做備忘錄,遞迴

*/#include #include using namespace std;

string x,y;

int c[100][100];

int b[100][100];

int inf = 0x7fff; //int最大2^15-1

//int xx,yy; //特別注意!!遞迴函式內部用到的變數不能宣告為全域性變數,而應該每次遞迴定義一次!!

int lookup_lcs(string x,string y,int i,int j)

else

}return c[i][j];

}int memoized_lcs(string x,string y)

res = lookup_lcs(x,y,m,n);

cout <>x;

cin >>y;

m=x.length();

n=y.length();

memoized_lcs(x,y);

print_lcs(x,b,m,n);

cout

cout <<" \t"

cout

cout <}

做備忘錄收穫

清空檔案內容 private void btn delall click object sender,eventargs e 刪除全部 瀏覽備忘錄 private void btn scan click object sender,eventargs e else sr.close 檢視備忘錄 pr...

常用排序演算法備忘錄

快速排序 public class quicksort 3,5,1,4,6,2,8 stringbuilder sb new stringbuilder new quicksort quicksort array,0,array.length 1 for integer num array syst...

備忘錄模式

備忘錄模式 memento 在不破壞封裝性的前提下,捕獲乙個物件的內部狀態,並在該物件之外儲存這個狀態。這樣以後就可將該物件恢復到原先儲存的狀態。originator 發起人 負責建立乙個備忘錄memento,用以記錄當前時刻它的內部狀態,並可以使用備忘錄恢復內部狀態。originator可根據需要...