歡迎選擇我的課程,讓我們一起見證您的進步~~
2種交換方式都沒錯,問題是第一種情況在交換的過程中nums[i]的值發(fā)生了變化
tmp := nums[i]
nums[i] = nums[nums[i]-1] //此處nums[i]的值改變了
nums[nums[i]-1] = tmp //下標nums[i]-1已經(jīng)不是你想要的值了
改為下面這種就沒問題了:
tmp := nums[nums[i]-1]
nums[nums[i]-1] = nums[i]
nums[i] = tmp
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號