會(huì)不會(huì)存在if(arr[j]<arr[j+1])如果存在怎么解釋
會(huì)不會(huì)存在if(arr[j]<arr[j+1])如果存在怎么解釋
j=0時(shí)
數(shù)值交換后arr[0]=1.77,arr[1]=1.78
j=1時(shí)
沒交換時(shí)arr[2]=1.82 ? ?arr[1]<arr[1+1]怎么解釋啊
會(huì)不會(huì)存在if(arr[j]<arr[j+1])如果存在怎么解釋
j=0時(shí)
數(shù)值交換后arr[0]=1.77,arr[1]=1.78
j=1時(shí)
沒交換時(shí)arr[2]=1.82 ? ?arr[1]<arr[1+1]怎么解釋啊
2016-05-25
舉報(bào)
2016-05-27
if(arr[j]<arr[j+1])
{
????????temp=arr[j];//前面聲明temp
????????arr[j]=arr[j+1];
????????arr[j+1]=temp;
}
如果滿足arr[j]<arr[j+1],那么arr[j]和arr[j+1]就會(huì)交換值,如果不滿足這個(gè)條件的話就不會(huì)交換例如arr[j]>arr[j+1],那么編譯器就不會(huì)去交換arr[j]和arr[j+1]的值.
好比開始是arr[0]=3,arr[1]=4,arr[2]=2.
當(dāng)J=0時(shí)arr[0]和arr[1]值交換,arr[0]=4,arr[1]=3;
當(dāng)J=1時(shí)arr[1]>arr[2],arr[1]和arr[2]的值不會(huì)交換,既arr[1]還是=3,? arr[2]還是=2.
2016-06-15
這段主要是將相鄰兩個(gè)數(shù)進(jìn)行比較,
如果前面的數(shù) > 后面的數(shù)? 就將前后數(shù)對(duì)調(diào)
如果前面的數(shù) < 后面的數(shù) 就不需要做什么
總之,兩相鄰數(shù)比較后的結(jié)果是將較大的數(shù)放到后面,這個(gè)較大的數(shù)再與其后面相鄰的數(shù)比較,保證每次比較后,較大的數(shù)都在后者的位置,這樣一串?dāng)?shù)字中,最大的數(shù)就跑到了最后面,這就是帽泡排序。,