/*插入排序 将一个无序数组中的数按循环一个个的抽出来,与其左边的数进行对比,如果大于则不动,如果小于则交换位置*/ class charu { public static void main(String[] args) { int cr[] = {-122,34,-3,5,8,11}; int in,out; for(out=1; out<6;out++) //外循环, { int temp = cr[out]; //从数组中按循环顺序去除一个数,放入temp中 in=out; if(in>=0) //防止--in 弄出来负数 { if(cr[in-1] >= temp) //判断temp中的数,如果小于左边的,则进入循环 { cr[in]=cr[in-1]; //如果temp小于左边的书,则将左边的数交换到右边去 --in; //将数组下标向左移动一位,用于下一步 } } cr[in]=temp; //如果temp比左边的大则不动,如果小于左边的则交换位置 } for(int i=0;i<6;i++) //循环输出排序好的数组的所有的值 { System.out.println(cr[i]); } } }