想問一下萬能的網(wǎng)友,這下面的是不是冒泡排序,按理說第一次排序會把99放到最后面的啊,可是為什么這個99被它吃了?吃了也就算了,居然還沒有排序
public class Main {
?????public static void main(String[] args) {
??????????int[] arr = {99,44,77,33,55,88,66};
??????????? for(int y = 0; y < arr.length; y++){
??????????????? if(arr[y] > arr[y+1]){
??????????????????? int temp = arr[y];
??????????????????? arr[y] = arr[y+1];
??????????????????? arr[y+1] = temp;
??????????????? }
??????????????????? System.out.print(arr[y]+",");
??????????? }
????}
}
2019-10-30
for循環(huán)里,到y(tǒng)=6的時候,此時arr[6]=99,但arr[y+1]超過此數(shù)組的范圍了。你把arr[6]和arr[y+1]交換,自然arr[6]會不見了。