Thuật toán sắp xếp đơn giản trong C/C++

Giải thuật sắp xếp là giải thuật mà hầu như ai học tin học đều biết đến. Có rất nhiều giải thuật để sắp xếp như insertion sort, selection sort, bubble sort, quick sort, mege sort.... nhưng thuật toán mà người ta hay áp dụng nhất là simple sort (thuật toán này thường được dạy khi học lập trình căn bản)


Video hướng dẫn 2 cách sắp xếp



Code:

#include <stdio.h>
#define n 5

void
inMang(int *a){
for
(int i=0;i<n;i++)
printf("%d ",a[i]);
}

void
swap(int &a,int &b){
int
t = a;
a = b;
b = t;
}


void
sapxep(int *&a){
for
(int i=0;i<n-1;i++){
for
(int j = i+1;j<n;j++)
if
(a[i]>a[j])
swap(a[i],a[j]);
printf("\nB%d: ",i+1);
inMang(a);
}
}

void
sapxep2(int *&a){
for
(int i=0;i<n-1;i++){
for
(int j = 0;j<n-i;j++)
if
(a[j]>a[j+1])
swap(a[j],a[j+1]);
printf("\nB%d: ",i+1);
inMang(a);
}
}

main
(){
int
*a = new int[5]{5,6,4,3,1};
sapxep(a);
printf("\n\n");
int
*b = new int[5]{5,6,4,3,1};
sapxep2(b);
}

Bài liên quan

Bài liên quan