冒泡排序数组排序

xiaoxiao2021-02-28  62

冒泡排序:对相邻的元素进行两两比较,顺序相反则进行交换,这样,每一趟会将最小或最大的元素“浮”到顶端,最终达到完全有序

#include <windows.h> #include <stdio.h> //交换数组元素 void swap(int *a, int *b); int main() { int str[10]; int i, j; for (i = 0; i < 10; i++) { str[i] = 10 - i; } //原值 for (i = 0; i < 10; i++) { printf("%d ", str[i]); } printf("\n"); //排序 for (i = 0; i < 10; i++) { for (j = i + 1; j < 10; j++) { if (str[i] > str[j]) { swap(&str[i], &str[j]); } } } //输出 for (i = 0; i < 10; i++) { printf("%d ", str[i]); } system("pause"); return 0; } void swap(int *a, int *b) { int c; c = *a; *a = *b; *b = c; }

数组排序

void swap(int *a, int *b) { int c; c = *a; *a = *b; *b = c; } void array_sort(int arr[4], int size) { int i, j = 0; for (i = 0; i < size; i++) { for (j = i + 1; j < size; j++) { if (arr[i] > arr[j]) { swap(&arr[i], &arr[j]); } } } } int main(int argc, char* argv[]) { array_size = 4; int str_va[4] = {6,8,3,2}; for (i = 0; i < 4; i++) { printf("%d ", str_va[i]); } cout << endl; array_sort(str_va, array_size );//数组排序 //输出 for (i = 0; i < 4; i++) { printf("%d ", str_va[i]); } cout << endl; }
转载请注明原文地址: https://www.6miu.com/read-46109.html

最新回复(0)