簡體   English   中英

Ruby:如何將哈希鍵和值顯示為數組

[英]Ruby: how to show hash keys and values as an array

我想將我的答案哈希鍵和值顯示為一個數組(在普通英語中,我們稱其為“一組答案”;不要與不同的編程術語“設置”混淆)。 因此,我可以顯示[a, 12] [b, 10]而不是{a => 12} {b => 10}

我知道如何打印/返回值,但我也想顯示相應值的鍵。

我正在檢查數組中的一堆數字,以查看其中哪些加起來是我要查找的數字。 例如:([1, 2, 3, 4, 5], 6)。 我可以獲得執行所有操作的函數並給我結果。 但我希望結果顯示為一組答案(或英文,“一組答案”),而不僅僅是散列。 所以,對於上面的例子,答案看起來像: [1, 5] [2,4]

array = [1, 2, 3, 4]
x = 5

def two_sum(array, x)
  set_nums = {}
  array.each do |y|
    difference = x - y
    if set_nums[difference]
      return set_nums
    end
    set_nums[y] = difference
  end
  return 'unable to find pairs'
end
puts two_sum(array, x)

我想得到[1, 4], [2, 3]

現在實際: {1=>4, 2=>3}

信用:@SergioTulentsev

最后一行需要更正以:

p two_sum(array, x).to_a

而不是“puts”,“p”和后綴 .to_a 解決了這個問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM