冒泡排序是一个经典算法
#include <stdio.h>void bubble_sort(int arr[], int n) { ? ? int i, j, temp; ? ? for (i = 0; i < n-1; i++) { ? ? ? ? for (j = 0; j < n-i-1; j++) { ? ? ? ? ? ? if (arr[j] > arr[j+1]) { ? ? ? ? ? ? ? ? temp = arr[j]; ? ? ? ? ? ? ? ? arr[j] = arr[j+1]; ? ? ? ? ? ? ? ? arr[j+1] = temp; ? ? ? ? ? ? } ? ? ? ? } ? ? } } int main() { ? ? int arr[] = {64, 34, 25, 12, 22, 11, 90}; ? ? int n = sizeof(arr)/sizeof(arr[0]); ? ? bubble_sort(arr, n); ? ? printf("Sorted array: \n"); ? ? for (int i=0; i < n; i++) { ? ? ? ? printf("%d ", arr[i]); ? ? } ? ? return 0; }
这是一个简单的例子,我再提供十道题供大家计算 给定一个整数数组,请对其进行升序排序。 给定一个浮点数数组,请对其进行降序排序。 给定一个字符串数组,请按字典序对其进行排序。 给定一个二维数组,请按每一行进行升序排序。 给定一个包含大写字母的字符串数组,请按字母顺序对其进行排序。 给定一个包含小写字母的字符串数组,请按字母顺序对其进行排序。 给定一个包含多个数字和字母的字符串数组,请按字母顺序和数字大小对其进行排序。 给定一个包含多个字符串的数组,其中一些字符串是其他字符串的前缀,请按字典序和非前缀关系对其进行排序。 给定一个包含多个日期字符串的数组,请按日期的先后顺序对其进行排序。 给定一个包含多个邮箱地址的数组,请按邮箱地址的字母顺序对其进行排序。