插入算法伪代码 for j=2 to A.length key=A[j] i=j-1; while i>0 and A[i]>key A[i+1]=A[i] i=i-1 A[i+1]=key c实现 void main(){ int A[]={3,8,1,4,5,0,2,5}; int j; int i=0; int key; int len=sizeof(A)/sizeof(A[0]); for(j=1;j<len;j++){ key=A[j]; i=j-1; while(i>=0 && A[i]>key){ A[i+1]=A[i]; i=i-1; } A[i+1]=key; } for(j=0;j<len;j++){ printf("%d ",A[j]); } } java代码实现 public class Main { public static void main(String[] args) { int [] arr={3,8,1,4,5,0,2,5}; for(int j=1;j<arr.length;j++){ int key=arr[j]; int i=j-1; while(i>=0 && arr[i]>key){ arr[i+1]=arr[i]; i--; } arr[i+1]=key; } for(int j=0;j<arr.length;j++){ System.out.print(arr[j]+" "); } } }