青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

<2006年10月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

統計

  • 隨筆 - 44
  • 文章 - 0
  • 評論 - 86
  • 引用 - 0

常用鏈接

留言簿(6)

隨筆分類(31)

隨筆檔案(44)

Mining

最新隨筆

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

Diff 算法
Diff 在Linux下非常有用, 最近在對定向蜘蛛的研究中, 發現網頁的信息大部分在Diff部分, 所以考慮了Diff的原理.

1. Unix Diff

Linux Diff 的基本原理在文 [ Dynamic Programming | http://www.sbc.su.se/~pjk/molbioinfo2001/dynprog/dynamic.html ] 中介紹的很詳細了.如果一個文件有n行, 則需要對一個n*n的矩陣進行計算以得到最佳匹配.


2. 貪心算法

在[ Windiff原理初探 | http://www.2maomao.com/blog/how-windiff-works-continued-1/ ]中看到一個貪心算法, 感覺在某種情況下還是比較適合的,但是有些情況還是存在一些問題.

貪心算法的基本思路是: 從問題的某一個初始解出發逐步逼近給定的目標,以盡可能快的地求得更好的解。當達到某算法中的某一步不能再繼續前進時,算法停止。

首先還是簡化問題:每個行根據內容映射到一個整型值, 這就將整個問題簡化為整形數組的比較,姑且稱之為Anew和Aold。

程序處理流程簡述:
while (還沒到頭)
{
?? while (還可以繼續找,還可以更貪心)
?? {
????? 找到下一個匹配的(依次對ANew的元素,查找其在AOld中的位置)
????? if (找的到)
???????? 計算其貪心值,如果當前更貪則用這個匹配做當前最佳匹配
????? else
???????? break;
?? }
}
輸出剩余的未匹配節點。

其中“還可以更貪心”是如何判定的呢?

首先定義左臂(leftHand,Anew里面新匹配位置距上一次被采用的匹配的距離),右臂(rightHand,Aold里面新匹配位置距上一次被采用的匹配的距離)。

要找一個目標,在這里我給定的目標是左右平衡情況下的最近匹配。比如一個匹配左臂1,右臂10,另一個匹配是左臂3,右臂3,這時候傾向于選擇后一個匹配。
為了公式化和便于計算,我采用一個簡單的具有這個邏輯的函數:leftHand*leftHand + rightHand*rightHand的值(貪心值)最小。

定義了這個目標以后,你會發現只要左臂過長,lefthand自身的平方超過上個候選匹配的貪心值,則可以停止往下計算了。

然后這個循環繼續下去,直到找到所有的匹配,對每兩個匹配之間,如果有內容,則表示有Add/Delete/Modify發生,根據左臂右臂是否為0可以明顯區分。

舉個例子:
Anew Aold
1???? 1
2???? 1
3???? 3
2???? 2
4???? 4
首次匹配找到1<-->1,匹配立即停止,因為1*1 + 1*1 = 2,2*2 > 2,所以沒有比較進行下去了.

然后往下找到2<-->2,這時候左臂等于1,右臂等于3,(注意臂長是相對上一次被采用的匹配的),1*1 + 3*3 = 10,當前貪心值是10;然后往下找到3<-->3,左臂為2,右臂為2,2*2 + 2*2 = 8,這個匹配優于上一個匹配;然后繼續往下找到2<-->2(左邊第二個2),左臂3,右臂3,3*3本身的平方已經超過目前的貪心值8,沒有必要再繼續往下匹配,這一輪匹配查詢結束。

這里可以看出采用平方和做貪心算式的好處,很快可以收斂,而且符合“左右平衡”以及“最近匹配”。
后面2和4的分析略去。

但是這個算法存在一個問題,它的算法只針對單行最優, 而無法實現多行的最優, 比如
Anew Aold
a??? a
b??? a
c??? b

像上面的兩個文件, Anew:1 匹配 Aold:1, 但是應該使 Anew:1 匹配 Aold:2, 這樣子才可以使Anew中序列ab 與 Aold的序列ab匹配.


3. 下一步工作

?* 調整貪心值計算函數
?* 貪心算法 + 部分動態規劃


posted on 2006-10-08 19:23 泡泡牛 閱讀(4279) 評論(1)  編輯 收藏 引用

評論

# re: Diff 算法[未登錄] 2008-11-14 12:31 Tony

你的那個貪心算法,不如那個動態規劃法好用啊
  回復  更多評論    
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲国产成人精品久久| 久久婷婷色综合| 99re6热在线精品视频播放速度| 亚洲丶国产丶欧美一区二区三区| 欧美日韩一二三区| 亚洲美女av电影| 在线亚洲观看| 精品不卡在线| 久久国产一区二区三区| 亚洲美女毛片| 国产乱码精品一区二区三| 久久成人18免费观看| 久久精品国产综合精品| 影音先锋国产精品| 日韩视频免费| 国外视频精品毛片| 91久久精品日日躁夜夜躁欧美 | 亚洲天堂激情| 亚洲免费婷婷| 在线观看一区二区精品视频| 欧美大片在线观看一区二区| 欧美日产国产成人免费图片| 欧美一区二区三区久久精品| 欧美阿v一级看视频| 亚洲欧美日韩一区二区三区在线 | 亚洲人成网站在线观看播放| 亚洲毛片一区二区| 在线成人av| 亚洲午夜一二三区视频| 亚洲高清不卡在线| 中国成人在线视频| 亚洲国产高清aⅴ视频| 亚洲视频综合| 91久久精品美女高潮| 午夜精品久久久久久久蜜桃app | 欧美在线免费观看| 免费观看不卡av| 久久久久久婷| 欧美一区二区三区男人的天堂| 91久久精品美女高潮| 国产麻豆视频精品| 99精品欧美一区二区三区综合在线| 老牛影视一区二区三区| 午夜精品理论片| 欧美精品一区在线播放| 久久男人资源视频| 国产亚洲精品久久久| 亚洲人成在线影院| 亚洲国产精品成人va在线观看| 蜜臀91精品一区二区三区| 欧美日韩在线视频首页| 亚洲高清一区二| 精品999成人| 欧美影院成人| 久久国产一区| 韩国精品在线观看| 小处雏高清一区二区三区 | 久久久久久97三级| 欧美亚洲免费在线| 国产精品高潮呻吟久久| 亚洲精品久久久一区二区三区| 欧美日一区二区三区在线观看国产免| 国产精品一区二区a| 亚洲精品久久视频| 久久精品在线观看| 久久综合久色欧美综合狠狠| 国产午夜精品久久久久久久| 亚洲欧美日韩国产精品| 欧美在线观看日本一区| 国产精品视频xxxx| 欧美一区二区三区视频在线 | 香蕉久久一区二区不卡无毒影院| 国产欧美一区二区三区久久| 日韩一级不卡| 亚洲欧美一区二区激情| 国产美女精品| 欧美一区二区| 欧美成人高清视频| 亚洲美女性视频| 欧美视频一二三区| 午夜一区不卡| 亚洲第一页在线| 亚洲视频1区2区| 国产欧美日韩综合一区在线观看| 免费观看在线综合| 亚洲国产高清高潮精品美女| 欧美va日韩va| 亚洲一卡久久| 六月婷婷一区| 中文国产一区| 狠狠色狠狠色综合日日五| 欧美成人精品福利| 亚洲午夜91| 免费欧美日韩| 亚洲欧美亚洲| 亚洲精品欧美激情| 国产精品视频精品| 久久一区国产| 亚洲视频一区在线| 久久一区亚洲| 亚洲欧美综合国产精品一区| 国内一区二区三区| 欧美日本亚洲视频| 欧美一区二区免费观在线| 亚洲激情网站免费观看| 久久精品亚洲精品国产欧美kt∨| 欧美日韩成人一区二区| 亚洲午夜高清视频| 牛夜精品久久久久久久99黑人| 国产欧美日韩免费| 欧美大色视频| 久久精品国产视频| 最新亚洲电影| 欧美 日韩 国产在线| 欧美一级二级三级蜜桃| 一区二区福利| 亚洲高清久久久| 黄色成人免费网站| 国产日韩精品视频一区二区三区| 亚洲视频欧美在线| 欧美韩日一区| 裸体歌舞表演一区二区| 亚洲欧美日韩国产综合在线| 日韩特黄影片| 最新日韩欧美| 最新成人av网站| 在线精品视频一区二区| 国产精品色午夜在线观看| 欧美区二区三区| 欧美高清在线视频观看不卡| 久久免费99精品久久久久久| 欧美一级视频免费在线观看| 亚洲午夜精品国产| 亚洲高清av| 亚洲精品国产系列| 国产精品一区二区久久精品| 国产精品xxxxx| 国产精品v欧美精品v日本精品动漫| 夜夜狂射影院欧美极品| 亚洲人精品午夜| 亚洲三级影院| 亚洲精品日产精品乱码不卡| 亚洲国产精品电影| 亚洲国产成人精品视频| 亚洲国产精品激情在线观看| 欧美成年人网站| 亚洲福利一区| 亚洲精品视频一区| 9色精品在线| 亚洲欧美久久久| 久久精品一区二区三区不卡牛牛 | 欧美一级午夜免费电影| 亚洲一二三区在线观看| 中日韩视频在线观看| 亚洲一级黄色| 欧美在线地址| 女人天堂亚洲aⅴ在线观看| 欧美成人一品| 亚洲国产欧美一区二区三区同亚洲 | 亚洲精品美女| 一区二区三区免费看| 亚洲免费一区二区| 欧美亚洲免费高清在线观看| 久久久久一区| 亚洲日本中文字幕免费在线不卡| 久久精品国产一区二区三区免费看| 黄色av一区| 亚洲精品护士| 午夜国产精品影院在线观看| 久久久久成人精品| 亚洲人成久久| 性欧美超级视频| 欧美二区视频| 国产精品久久久久一区| 韩国精品久久久999| 99精品国产热久久91蜜凸| 午夜精品一区二区三区电影天堂| 91久久综合| 亚洲免费在线观看| 美女诱惑一区| 中国成人在线视频| 美女精品网站| 国产模特精品视频久久久久| 激情综合五月天| 一区二区三区 在线观看视| 久久不见久久见免费视频1| 91久久精品一区| 久久精品导航| 国产精品麻豆成人av电影艾秋| 欧美日韩1区2区3区| 国产日韩欧美不卡| 一区二区三区**美女毛片| 免费观看成人鲁鲁鲁鲁鲁视频| 久久成人免费网| 亚洲毛片在线看| 毛片一区二区| 黄网动漫久久久| 久久se精品一区二区| 99热这里只有精品8| 欧美3dxxxxhd|