インタージャーの配列があるとします。
A[]={2, 2, 9, 8, 5, 7, 0, 6}
とステンシル:
B[]={1, 0, 0, 1, 1, 1, 0, 1}
私の質問は、B [i] == 1、B [j] == 0の場合、A[i]がA[j]の前にあることが保証されるように、B[]に従ってA[]をどのように再配置できるかということです。新しい配列。次のようになります。
C[]={2, 8, 5, 7, 6, 2, 9, 0}
PS:述語のみをサポートしていることを除けば、「パーティション」関数がほとんど答えであることがわかりました。回避策はありますか?
ヒントは大歓迎です!