我有一個看起來像這樣的文件。刪除perl hash中的冗餘
a_8_3_1-b_30_5_6-c_6_2_1- + b_30_5_6-
a_123_1_1- + d_144_1_7-
a_123_1_1- + c_1_4_1-
b_50_1_1- + d_144_1_7-
a_123_1_1- + c_2_1_2-
c_1_4_1- + a_123_1_1-
a_123_1_1- + a_93_1_2-
d_144_1_7- + a_123_1_1-
c_2_1_2- + a_123_1_1-
a_123_1_1- + c_2_1_2-
它有2列,用「+」號分隔。我需要計算此文件中存在的唯一組合的數量。
如所見,形成了組合,例如在a_123_1_1-和c_2_1_2-之間,以及在c_2_1_2- + a_123_1_1-之間。現在我需要計算不。在這樣一個文件中出現這樣的對,我知道這個組合(不管它們的相對順序)發生3次。
與a_123_1_1-和d_144_1_7-類似的情況。它們以兩種組合出現。每個組合出現一次。因此,這是累積計數= 2
我有截至目前爲止,嘗試所有這些行中的散列(即每一行將是一個關鍵,其出現將是其對應的值),並打印出沒有。在PERL中使用映射函數的發生次數。
但是,我如何包含這樣的冗餘並解決單個元素之間的順序問題?
請幫忙。
顯示您已擁有的代碼。 – daxim 2012-03-28 12:16:21