私の問題は、配列の終わりに達するまで、アイテムの配列全体を反復し、 1つのアイテムだけがアレイに残るまで前後に移動します。1つだけが残るまで配列内の他のすべてのアイテムを削除する
例えば:1,2,3,4,5、1,3,5になると、その後
3は、私は別の配列を作成したので、私は、元の配列から削除されるべきではないことを理解するであろうことサイズを減らしながら他のアイテムを1つだけ保持しますが、それを動作させて無限ループに終わらせることはできません。
arr=*(1..10)
s_arr=[]
until s_arr.length==1
i=0
while i<arr.length
s_arr.push(arr[i])
i+=2
end
arr=s_arr.reverse
s_arr=arr
end
ありがとうございます。
'arr = *(1..10)'の出力は? '(0 ... arr.size).each {| index | [index、-index] .each {| el | arr.delete_at el}} '仕事? –
'[1、2、3、4、5、6、7、8]'の出力はどうなりますか? –
こんにちはセバスチャンこの行arr = *(1..10)は、任意の配列で置き換えられます。arr = [2,21,1,5,6,12,100,9,17] この配列でコードを実行した後私は2つの要素が残っています => [6、9] そして私はただ一つで終わる必要があります。何かご意見は? コード内の-indexはどのように機能しますか?私は前にマイナスで使ったことはありません。おかげさまで – Borris