氣泡排序的疑問

時間 2022-03-30 10:55:18

1樓:

數值要變化,所以要臨時,賦值順序不能變,所以不能換

2樓:

臨時存放是正確的

但是位置是不能換的,你要先把值呢傳給別人,然後呢自己就變化了,如果自己先變化在傳給別人,那就是變化後的值了,所以呢不能換位置

不知道你有明白點了沒。。。希望能幫到你!~

3樓:匿名使用者

如果你僅僅是這兩句,那在array2[j]=array2[j+1]; 這一句的時候array2[j]的值被賦為array2[j+1]的值,也就是array2[j]的值和array2[j+1]的值是相等的。然後在array2[j+1]=array2[j]這裡給array2[j+1]賦值的時候,賦的其實是array2[j+1]自己的值了。所以要用一個temp來臨時記錄下array2[j]的值,然後把array2[j+1]的值賦值給array2[j],再把temp的值也就是array2[j]的值賦值給array2[j+1],這樣就達到了兩個數互換的目的。

4樓:東方日出席邊鬱

拋開你的問題,

我想問你 a=3 b=5你怎麼調換他倆呢? 結果是 b=3 a=5

5樓:

大家解釋的很清楚了.就是交換兩杯水一樣,需要第三個杯子.

不過對於計算機其實還有方法不用第三個杯子

不給只針對整形變數

code[

int a=3,b=5;

a^=b;

b^=a;

a^=b;

]這時a,b就交換了

6樓:

太簡單了,你再多加點分

C氣泡排序,c 關於氣泡排序法的簡單程式碼

如下 class program static void main string args 個同學的分數 i array i 1 int.parse console.readline sort array console.writeline n 成績排序結果如下 for int i 0 i arra...

氣泡排序法是如何排序的

隨便什麼名啦啦 氣泡排序演算法的原理 1 比較相鄰的元素。如果第一個比第二個大,就交換他們兩個。2 對每一對相鄰元素做同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。3 針對所有的元素重複以上的步驟,除了最後一個。4 持續每次對越來越少的元素重複上面的步驟,直到沒有任...

關於C語言氣泡排序法要詳解,C語言氣泡排序法

牧念露 include void main int i,j,k for i 0 i 8 i for j 0 j 10 j for j 0 j 9 j for j 0 j 10 j 9在j 9 中 printf n getch 陣列元素進行比較的時候,下標不對。include void main in...