algorithm
[c++] 삽입정렬, Special sort
tonirr
2020. 12. 15. 23:22
- 삽입정렬
#include <iostream>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
int main() {
freopen("input.txt", "rt", stdin);
int n, i, j, tmp;
int a[101];
scanf("%d", &n);
for(i=0; i<n; i++){
scanf("%d", &a[i]);
}
for(i=1; i<n; i++){
tmp=a[i];
for(j=i-1; j>=0; j--){
if(a[j]>tmp) a[j+1]=a[j];
else {
break;
}
}
a[j+1]=tmp;
}
for(i=0; i<n; i++){
printf("%d ", a[i]);
}
return 0;
}
- Special sort
#include<stdio.h>
int main() {
freopen("input.txt", "rt", stdin);
int a[101], n, tmp, min, i, j;
scanf("%d", &n);
for(i=0; i<n; i++){
scanf("%d", &a[i]);
}
for(i=0; i<n-1; i++){
for(j=0; j<n-i-1; j++){
if(a[j]>0 && a[j+1]<0){
tmp=a[j];
a[j]=a[j+1];
a[j+1]=tmp;
}
}
}
for(i=0; i<n; i++){
printf("%d ", a[i]);
}
return 0;
}