回答:
リストのリストがある場合、「flatten」は、すべてのリーフ要素のリストを順番に返す操作です。つまり、何かが変化します。
[[a, b, c], [d, e, f], [g, h i]]
に
[a, b, c, d, e, f, g, h, i]
木の場合、フラット化は、すべてのリーフのリストを自然なトラバーサル順で生成します(NB:結果に含まれるのはリーフのみであるため、これをプレオーダー、インオーダー、ポストオーダーのトラバースと考えるかどうかは関係ありません)。
結果として、単純なリストの場合、「フラット化」操作は定義上、ID変換です。
平坦化は、段階または度単位で実行できます。例えば:
[[[a, b], [c, d]], [[e, f], [g, h]]]
次のようにフラット化できます。
[[a, b, c, d], [e, f, g, h]]
そして次に:
[a, b, c, d, e, f, g, h]