Ruby 初心者スレッド ..
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
364:デフォルトの名無しさん 09/08/23 01:53:06 多次元配列の重複要素削除の仕方がわかりません Cでいうところの、 a[3][5] = {[1,2,3,4,a], [2,3,4,5,b], [2,3,4,5,a]} って、あったら、aが重複してるので、 [1,2,3,4,a], [2,3,4,5,b] だけにしたい a.uniq{|x| x[4]} ってのは間違い?? 365:デフォルトの名無しさん 09/08/23 03:01:15 >>364 Array#uniqはブロックを取らないはず a[x][4]の値が既出の配列は捨てるってことだよね? a = [[1,2,3,4,"a"], [2,3,4,5,"b"], [2,3,4,5,"a"]] tmp = {} a.select{|v| tmp[v[4]] ? false : (tmp[v[4]] = true) } どこかで見たと思ったら>>326と似てた 366:デフォルトの名無しさん 09/08/23 04:55:14 >>364 多次元配列など存在しません ネストした配列とお呼び下さい で、まあ、ネストしただけの配列なので普通にイテレーションして exists = Array.new a.delete_if{|arr| if exists.include?(arr[4]) then false else exists << arr[4]; true end} とかすればいいんじゃね Rubyでコレクションをぐるぐるすること厭っちゃダメ
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
5389日前に更新/180 KB
担当:undef