配列内の値を比較する必要があります。
たとえば、私の配列は次のとおりです。
[18, 1, 113, 103, 1100, 909, 94, 67, 61]
18->1
、などの各値を比較する必要があり1->113
ます113->103
。
配列内の値を比較する必要があります。
たとえば、私の配列は次のとおりです。
[18, 1, 113, 103, 1100, 909, 94, 67, 61]
18->1
、などの各値を比較する必要があり1->113
ます113->103
。
必要な比較の種類は指定しませんが、これは配列をウォークスルーし、連続する要素を比較します。
puts [
18, 1, 113, 103, 1100, 909, 94, 67, 61
].each_cons(2).map{ |a, b| a <=> b }
どの出力:
1
-1
1
-1
1
1
1
1
比較演算子<=>
は、2 つの値を比較するための並べ替えに使用されます。a < b
の場合は -1、 の場合は 0、 の場合はa == b
1を返しますa > b
。
つまり、18 > 1
、1 < 113
、113 > 103
、103 < 1100
、および残りはすべて降順であることがわかります。
<=>
必要な比較に置き換えてください。