広告スペース(バナー)
🟣Julia レッスン
基本文法の基礎8▾
データ構造とオブジェクト指向7▾
構文の基本を深める9▾
関数とデータ構造の応用9▾
アルゴリズムとテストの基礎8▾
文字列・数値操作の応用8▾
実務で役立つ機能8▾
レッスン 42 / 68
配列の平坦化(flatten)
このレッスンでは、Juliaで入れ子になった配列を平坦化(flatten)する方法を学び、複雑なデータ構造をシンプルに扱う方法を理解することを目標にします。「Julia flatten 使い方」で調べている方向けです。
配列の中に入れ子になった配列があるとき、それを「平らな」1つの配列に展開することをflatten(平坦化)と呼びます。JuliaではIterators.flatten()を使うと実現できます。
サンプルコードでは、collect(Iterators.flatten(nested))により、[[1, 2], [3, 4], [5]]という入れ子の配列を[1, 2, 3, 4, 5]という1つの配列に展開しています。Iterators.flatten()が返す遅延評価の反復子をcollect()で実際の配列に変換している点にも注目してみましょう。
初心者がよくつまずくのが、collect()の必要性です。Iterators.flatten()だけでは反復子(イテレータ)のままで、配列として使いたい場合はcollect()で明示的に変換する必要があります。
実際の開発現場では、入れ子構造のデータをまとめて1つのリストとして扱いたいときに役立つ、実務でも使われるテクニックです。
📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください
🧪 このサイトではJuliaを直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。
🎯
ここまでできればゴール達成!
入れ子になったデータを、1つのまとまったリストに整理できるようになります。
入れ子になったデータを、1つのまとまったリストに整理できるようになります。
広告スペース(バナー)
広告スペース(記事内)