2020-09-15 らすと:こんぶぺるむすにぺと? memorandum 前にも書いたことあるかもしらんが Rustで組み合わせ(?)と順列(?)のパティーン生成するコード書いた 特に意味はない 組み合わせ(?) ソース [0, 1, 2] [0, 1, 3] [0, 1, 4] [0, 2, 3] [0, 2, 4] [0, 3, 4] [1, 2, 3] [1, 2, 4] [1, 3, 4] [2, 3, 4] https://ideone.com/hrKnzS 順列(?) ソース [0, 1, 2] [0, 1, 3] [0, 1, 4] [0, 2, 1] [0, 2, 3] [0, 2, 4] [0, 3, 1] [0, 3, 2] [0, 3, 4] [0, 4, 1] [0, 4, 2] [0, 4, 3] [1, 0, 2] [1, 0, 3] [1, 0, 4] [1, 2, 0] [1, 2, 3] [1, 2, 4] [1, 3, 0] [1, 3, 2] [1, 3, 4] [1, 4, 0] [1, 4, 2] [1, 4, 3] [2, 0, 1] [2, 0, 3] [2, 0, 4] [2, 1, 0] [2, 1, 3] [2, 1, 4] [2, 3, 0] [2, 3, 1] [2, 3, 4] [2, 4, 0] [2, 4, 1] [2, 4, 3] [3, 0, 1] [3, 0, 2] [3, 0, 4] [3, 1, 0] [3, 1, 2] [3, 1, 4] [3, 2, 0] [3, 2, 1] [3, 2, 4] [3, 4, 0] [3, 4, 1] [3, 4, 2] [4, 0, 1] [4, 0, 2] [4, 0, 3] [4, 1, 0] [4, 1, 2] [4, 1, 3] [4, 2, 0] [4, 2, 1] [4, 2, 3] [4, 3, 0] [4, 3, 1] [4, 3, 2] https://ideone.com/2prJsd どうでもいい気付きだけど これらの実装でnextをそのままIteratorのメソッドとして実装しようとしたらエラー出て ナンデ?って分からなかったけど collectのメソッドのことを考えれば このままの実装でcollectやったらヤバいよな、って気づいて つまるとこIteratorのnextで返すデータは独立して存在してなきゃダメってことだよな…(厳密には違うかも…だが