次のようなリストがあります(簡潔なソリューションを提供するコレクションのタイプとして実装できます):
4,1,5,2,1,3,8,1,6,4,2,3
リストは実際には 3 つの値のグループであり、その長さは常に 3 の倍数になります。グループの最初の 2 つの値とグループの 3 番目の値の間に関係はありません。
3つおきの値がそのまま残るように配列をソートしたいと思います。私が与えた例では、結果は次のようになります。
1,1,5,1,2,3,2,4,6,4,8,3
インデックス 0、1、3、4、6、および 7 を持つ要素が並べ替えられました。インデックス 2、5、および 8 の要素はソートされていません。
これを表現する別の方法は、リストが x,x,y,x,x,y,x,x,y,x,x,y であり、x のみを並べ替えたいと想像することです。
私はアルゴリズムを書くことができますが、これを行う簡潔な方法があるのだろうか?