Re: [問題] 兩筆檔案比對

看板Perl作者 ((cynical.))時間19年前 (2006/05/06 02:38), 編輯推噓1(101)
留言2則, 1人參與, 最新討論串6/6 (看更多)
※ 引述《abliou (Art of Life)》之銘言: : ※ 引述《knep ((cynical.))》之銘言: : : 建議你可以用 hash 來做, : : 如果以這個例子, 總共要比對 5*4 次; 用 hash 只要 5+4 次就可以了. : 請問一下用hash比對的概念是怎樣?? : 剛剛看到c版友用到hash寫...不過我看不太懂... : 很對不起我是初學者.... : 行的話可以請你指點一下整個概念嗎?? 那小弟就先幫 c 板友寫個註解好了 XD 你應該要先知道雜湊 (hash) 是一個鍵 (key) 對應一個值 (value) 的資料結構. ※ 引述《cutecpu (可愛中央處理器)》之銘言: : open F1,"<./ok1/NNcontact1.txt"; # 將整個 NNcontact1.txt 一行一行的讀進程式中 # 每一行都當作一個 key 存入雜湊 hash 中, 並將值設為 1. : $hash{$line}++ while(chomp($line=<F1>)); : close F1; : open F2,"<./ok2/NNcontact1.txt"; # 一行一行的讀入 NNcontact1.txt # 如果該 key 已經存在, 就幫 $cnt 加 1. : $cnt+=$hash{$line}?1:0 while(chomp($line=<F2>)); : close F2; : print "$cnt\n"; 大概是這樣~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.162.118.129

05/06 02:50, , 1F
謝謝!!!
05/06 02:50, 1F

05/06 02:51, , 2F
原來如此..!!!
05/06 02:51, 2F
文章代碼(AID): #14MvkGyU (Perl)
文章代碼(AID): #14MvkGyU (Perl)