经典算法:冒泡排序
-
冒牌排序概念
自行百度这里不过多赘述。 -
问题引入
有这样一个数组,请用冒泡排序。int[] arr={5,2,4,9,6,7}
批话不多说直接上代码。
//int[] arr={2,5,7,9,6,7}
int L=arr.length;//把数组长度定义为L
for(int i=0;i<L-1;i++){ //外层for循环,有几个数循环几次
for(int j=0;j<L-1-i;j++){//内层控制每个数比几次
if(arr[j]>arr[j+1]){//交换位置,如果大就往后
int tmp=arr[j];//定义暂时存放的,以便于后续交换
arr[j]=arr[j+1]
arr[j+1]=tmp
}
}
}
可能难理解的是内层循环的-1-i,-i的意思就是少比一次,因为上次循环已经排出最小的了,已经不在需要跟他比了,所以就少比一次
3. 最后实在不理解就硬背,多写几次就会了