1 条题解
-
0
C :
#include <stdio.h> #include <stdlib.h> int main() { int N; scanf("%d",&N); int i,j,a[N+1]; for(i=1;i<N+1;i++) { scanf("%d",a+i); } for(i=2;i<N+1;++i) { if(a[i-1]>a[i]) { a[0]=a[i]; a[i]=a[i-1]; for(j=i-2;a[0]<a[j];--j) { a[j+1]=a[j]; } a[j+1]=a[0]; } } for(i=1;i<N+1;i++) printf("%d ",*(a+i)); printf("\n"); return 0; }
C++ :
#include<iostream> #include<cstdio> #include<cstring> #include<cstdlib> #include<string> #include<cstring> #include<iomanip> #include<algorithm> using namespace std; int a[100001],n,i; int main(){ scanf("%d",&n); for(i=1;i<=n;i++) scanf("%d",&a[i]); sort(a+1,a+1+n); for(i=1;i<=n;i++) printf("%d ",a[i]); cout<<endl; return 0; }
Pascal :
program ex_2; var a:array[1..100000] of integer; i,j,t,n:integer; begin readln(n); for i:=1 to n do read(a[i]); for i:=1 to n-1 do for j:=i+1 to n do if a[i]>a[j] then begin t:=a[i]; a[i]:=a[j]; a[j]:=t; end; for i:=1 to n do write(a[i],' '); end.
Java :
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); int arr[]=new int[n]; for(int i=0;i<n;i++) { arr[i]=sc.nextInt(); } insertSort(arr); for(int i=0;i<n-1;i++) { System.out.print(arr[i]+" "); } System.out.println(arr[n-1]); } public static void insertSort(int arr[]) { for (int i = 1; i < arr.length; i++) { if (arr[i - 1] > arr[i]) { int temp = arr[i]; int j = i; while (j > 0 && arr[j - 1] > temp) { arr[j] = arr[j - 1]; j--; } arr[j] = temp; } } } }
- 1
信息
- ID
- 552
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者