<code>nums = [3,5,4,1,2]
for i in range(len(nums) - 1):
\t\t\t\tfor j in range(len(nums)- 1 - i):
\t\t\t\t\t\t\t\tif nums[j] > nums[j+1]:
\t\t\t\t\t\t\t\t\t\t\t\tnums[j],nums[j+1] = nums[j+1],nums[j]
print(nums)/<code>
升序排序
第一次遍歷
3 5 4 1 2 ,3不大於5位置不變
3 5 4 1 2 , 5大於4位置調換
3 4 5 1 2 , 5大於1位置調換
3 4 1 5 2 ,5大於2位置調換
3 4 1 2 5 。第一次遍歷結束,將最大的數字5排在了最後一位。
第二次遍歷
3 4 1 2 5 ,3不大於4位置不變
3 4 1 2 5 ,4大於1位置調換
3 1 4 2 5 , 4大於2位置調換
3 1 2 4 5 。第二次遍歷結束,將除了5以外的最大的數排在5之前。
第三次遍歷
3 1 2 4 5 ,3大於1位置調換
1 3 2 4 5 ,3大於2位置調換
1 2 3 4 5 。第三次遍歷結束,將除了4和5以外最大的數排在4前面。
第四次遍歷
1 2 3 4 5 ,1不大於2位置不變
1 2 3 4 5 。第四次遍歷結束。
遍歷結束。列表長度為5,則需要遍歷4次。
閱讀更多 小和月亮 的文章