2011-11-19 30 views

回答

0

我想這是定義的問題。他在每個循環結束時都進行交換,即使他正在交換一個元素。在他的情況下,該交換將是:

  • 原件:5 4 3 2 1
  • 交換位置1和5:1 4 3 2 5
  • 交換POS 2和4:1 2 3 4 5
  • 交換POS 3和3:1 2 3 4 5
  • 交換POS 4和4:1 2 3 4 5

(沒有交換被最後元件,因爲這將總是在完成正確的地方)

一個簡單的if語句可以用來消除最後兩個互換。

+0

- 5 4 3 2 1(初始狀態) - 1 4 3 2 5(交換5和1) - 1 2 3 4 5(交換4和2) –

+0

是的,我同意。沒有使用交換元素對自己。 – Albin