この課題は、すでにドロップソートについて説明しています。しかし、私はちょっと怠け者だと私は本当に私の唯一の配列は、もう少しソート以前よりもする必要があり、それはソートする必要はありませんすべての方法を。
ドロップソートでは、その前の要素よりも小さいすべての要素をドロップします。レイジードロップソートでは、厳密に先行する要素よりも小さい要素をすべて削除します。
以下に例を示します。次の配列を検討してください。
8 6 9 9 7 2 3 8 1 3
前の要素よりも小さい要素をすべてマークしましょう。
8 6 9 9 7 2 3 8 1 3
^ ^ ^ ^
どちら3
もマークされていないことに注意してください8
。それらはすべて、左側の単一の要素よりも大きくなっています。
アルゴリズムを完了し、マークされた要素を削除すると、次のようになります。
8 9 9 3 8 3
それは基本的にもっとソートされているように見えます。ちょっと。私は怠け者。
あなたがすでに推論したかもしれないあなたの仕事は、このアルゴリズムを実装することです。
入力は1〜9の少なくとも1つの正の整数の配列であるため、数字のストリングも使用できます。
これはcode-golfで、最少バイトが勝ちます!
追加のテストケース:
1
1
1 2 3
1 2 3
5 3 1
5
1 2 3 2 1
1 2 3
1 1 1 9 9 9 1 1 1 9 9 9 1 1 1
1 1 1 9 9 9 1 1 9 9 9 1 1
9 9
9 9
5 2 4 2 3
5 4 3