标签:tac div problem 插入排序 http editable 处理 插入 2-2
4 2 1 3 4 5 5 4 3 2 1 0
1 2 3 4 1 4 3 2 5
#include<iostream>
#include<string>
#include<stack> //出入栈头文件
using namespace std;
int main()
{
int n=0;
cin>>n;
int array[n]; //用于排序的数组,其实更好的方法是不用进行排序的
int arr1[n]; //用于保存原来输入的原始数据
int m=0; //用于存储最小数所在的位置
for(int k=0;k<n;k++)
{
cin>>array[k];
arr1[k]=array[k];
}
for(int i=1;i<n;i++) //插入排序法
{
int temp=array[i];
int j=i-1;
while(j>=0&&array[j]>temp)
{
array[j+1]=array[j];
j--;
}
array[j+1]=temp;
}
for(int k=0;k<n;k++)//计算出 原始数据中最小数所在的位置,方便后面交换
{
if(arr1[k]==array[0])
m=k;
}
int temp2=arr1[0]; //交换最小数与原来数据的第一位
arr1[0]=array[0];
arr1[m]=temp2;
for(int k=0;k<n;k++)//输出
{
cout<<arr1[k]<<‘ ‘;
}
return 0;
}
标签:tac div problem 插入排序 http editable 处理 插入 2-2
原文地址:http://www.cnblogs.com/panlangen/p/7806797.html