LCS-最長共同子序列的問題

2012-02-14 9:15 am
例如
president
providence
用眼睛就能看出來答案priden

但是
algorithm
alignment
的LCS好像是 algm

為何不是
aligtm
或是
aligmt

難道一定要畫圖嗎 該怎麼畫呢??? 我是初學者...
更新1:

如果只用看的可以嗎

更新2:

你說 aligtm或是 aligmt 在兩行中所有的順序不相同,所以不是解答 此題的解答 algm 在兩行之中都擁有相同的順序和相對位置,是正確的 但是前者m在t之後 後者m在t之前 順序也不同阿 為何解答有m??????????????????

回答 (1)

2012-02-17 7:01 am
✔ 最佳答案
不需要畫圖喔
只要讓program去算就好了


最長共同子:從原來的的字串或數列隨意的挑選幾項並保持其相對的順序的字串或數列

字串的會比較難解釋
先用數字好了
100 200 300200 100 300隨意挑選兩項,第一行的100 和200, 和下面的比對,相對的位置不同,第一行是200在右方,第二行是200較左邊,所以不符合最長共同子得定義。但如果挑200和300的話,兩數字在兩行中的相對位置都是200在左300在右,所以兩行的最常共同子是200和300

在看一下文字,

algorithm
alignment

aligtm或是 aligmt 在兩行中所有的順序不相同,所以不是解答
此題的解答 algm 在兩行之中都擁有相同的順序和相對位置,是正確的
PS: 自製小程式,僅能計算數字的LCS長度(抱歉,盡力了),網址:http://skyline.youpost.info/viewthread.php?tid=10&extra=

2012-02-16 23:02:11 補充:
第六行寫錯了,
是:
100 200 300
200 100 300
參考: ME


收錄日期: 2021-04-27 19:24:38
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20120214000015KK00490

檢視 Wayback Machine 備份