91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

動態規劃-最長公共子序列

發布時間:2020-10-23 21:22:49 來源:網絡 閱讀:4645 作者:匯天下豪杰 欄目:編程語言

(1)、問題描述:給出2個序列,x是從1到m,y是從1到n,找出x和y的最長公共子序列?

x:A B C B D A B

y:B D C A B A

則:最長公共子序列長度為4,BDAB BCAB BCBA均為LCS(最長公共子序列);

動態規劃-最長公共子序列

模型實現圖:

動態規劃-最長公共子序列


(2)、問題解決

  代碼實現了最長公共子序列的長度

#include<stdio.h>

#define N    10

int LCS(int *a, int count1, int *b, int count2);
int LCS(int *a, int count1, int *b, int count2){
    int table[N][N] = {0};
    int i;
    int j;

    for(i = 0; i < count1; i++){
        for(j = 0; j < count2; j++){
            if(a[i] == b[j]){
                table[i+1][j+1] = table[i][j]+1;
            }else{
                table[i+1][j+1] = table[i+1][j] > table[i][j+1] ? table[i+1][j] : table[i][j+1];
            }
        }
    }

    return table[count1][count2];
}

void main(void){
    int a[] = {1, 2, 3, 4, 5, 6};
    int b[] = {2, 3, 5, 6, 7};
    int count1 = sizeof(a)/sizeof(int);
    int count2 = sizeof(b)/sizeof(int);
    int number;

    number = LCS(a, count1, b, count2);
    printf("%d\n", number);
}

  結果截圖

動態規劃-最長公共子序列       


(3)、動態規劃的特征:

  特征一(最優子結構的性質):一個問題的最優解包含了子問題的最優解;

  特征二:重疊子問題,一個遞歸的過程包含很少的獨立子問題被反復計算了多次;

  時間復雜度:O(m*n);

 



向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

永登县| 剑川县| 泌阳县| 固镇县| 安多县| 邮箱| 丹凤县| 临潭县| 洛隆县| 河池市| 中山市| 扶绥县| 芦溪县| 彭水| 视频| 香格里拉县| 景谷| 卫辉市| 九江市| 甘肃省| 连平县| 正镶白旗| 肇庆市| 桓仁| 永吉县| 凭祥市| 正宁县| 遂昌县| 桂阳县| 天水市| 平陆县| 闵行区| 朝阳市| 衢州市| 沁阳市| 上蔡县| 沈丘县| 板桥市| 道孚县| 岑溪市| 高邮市|