1.冒泡排序
#include <stdio.h>
void bubble_sort(int arr[], int len);
void swap(int *a,int *b);
int main() {
int arr[] = { 22, 34, 3, 32, 82, 55, 89, 50, 37, 5, 64, 35, 9, 70 };
int len = sizeof(arr) / sizeof(int);
bubble_sort(arr, len);
int i;
for ( i = 0; i < len; i++)
printf("%d ", arr[i]);
return 0;
}
void bubble_sort(int arr[], int len)
{
int i, j;
for (i = 0; i < len - 1; i++)
for (j = 0; j < len - 1 - i; j++)
if (arr[j] > arr[j + 1])
{
swap(&arr[j],&arr[j+1]);
}
}
void swap(int *a,int *b)
{
int temp;
temp = *a;
*a = *b;
*b = temp;
}
2.插入排序
#include <stdio.h>
void insert_sort(int arr[], int len);
int main() {
int arr[] = { 22, 34, 3, 32, 82, 55, 89, 50, 37, 5, 64, 35, 9, 70 };
int len = sizeof(arr) / sizeof(int);
insert_sort(arr, len);
int i;
for ( i = 0; i < len; i++)
printf("%d ", arr[i]);
return 0;
}
void insert_sort(int arr[], int len)
{
int i, j, temp;
for (i = 0; i < len; i++)
{
temp=arr[i];
for (j = i; j>=0 && arr[j-1]>temp ; j--)
{
arr[j]=arr[j-1];
}
arr[j]=temp;
}
}