Ruby 配列の中で最大値のインデックス番号を求める
Rubyで、配列の中で最大値のインデックス番号を求めるサンプルコードを記述してます。rubyのバージョンは2.7.2を使用してます。
環境
- OS windows10 pro 64bit
- ruby 2.7.2p137
最大値のインデックス番号を求める
「index」と「max」を使用すれば、配列の最大値のインデックス番号の初めに見つかった番号は求めることは可能です。
arr = [5, 4, 5, 4, 1]
p arr.index(arr.max)
# 0
arr = [3, 5, 4, 5, 4, 1, 5]
p arr.index(arr.max)
# 1
each_with_index.maxを使用すれば、最後に見つかった、配列のインデックス番号の最大値を求めることができます。
arr = [5, 4, 5, 4, 1]
p arr.each_with_index.max[1]
# 2
arr = [3, 5, 4, 5, 4, 1, 5]
p arr.each_with_index.max[1]
# 6
全て見つけるには、以下のコードで可能です。
arr = [5, 4, 5, 4, 1]
p arr.each_index.select{|i|arr[i]==arr.max}
# [0, 2]
arr = [3, 5, 4, 5, 4, 1, 5]
p arr.each_index.select{|i|arr[i]==arr.max}
# [1, 3, 6]
-
前の記事
typescript ストリングリテラル(String literal)型を定義する 2021.06.06
-
次の記事
javascript autofocus属性を取得して有効・無効にする 2021.06.07
コメントを書く