我要比較一個數組內的哈希值:如何用修正因子創建散列的差異?
h_array = [
{:name => "John", :age => 23, :eye_color => "blue"},
{:name => "John", :age => 22, :eye_color => "green"},
{:name => "John", :age => 22, :eye_color => "black"}
]
get_diff(h_array, correct_factor = 2)
# should return [{:eye_color => "blue"}, {:eye_color => "green"}, {:eye_color => "black"}]
get_diff(h_array, correct_factor = 3)
# should return
# [[{:age => 23}, {:age => 22}, {:age => 22}],
# [{:eye_color => "blue"}, {:eye_color => "green"}, {:eye_color => "black"}]]
我想diff的包含在h_array
的哈希值。它看起來像遞歸調用/方法,因爲h_array
可以具有多個哈希值,但具有相同數量的鍵和值。我如何實現get_diff
方法?
數組中的哈希鍵是否總是相同? – macarthy 2011-02-23 12:43:58
'correct_factor'的含義是什麼? – 2011-02-23 13:21:14
我不明白'correct_factor'是爲了什麼? – jamiei 2011-02-23 17:43:30