排序算法总结

来源:互联网 发布:linux expect telnet 编辑:程序博客网 时间:2024/04/19 14:45
  1. 冒泡排序

#include <iostream>void printfArray(int arr[], int n){    for (int i = 0; i < n; ++i)    {        std::cout << arr[i] << " ";    }    std::cout << std::endl;}//冒泡排序void bubbleSort(int arr[], int n){    int tmp = 0;    for (int i = 0; i < n - 1; ++i)    {        for (int j = 0; j < n - i - 1; ++j)        {            if (arr[j] > arr[j + 1])            {                tmp = arr[j];                arr[j] = arr[j + 1];                arr[j + 1] = tmp;            }        }    }} //冒泡排序void bubbleSort2(int arr[], int n){    int tmp = 0;    for (int i = 0; i < n; ++i)    {        for (int j = i + 1; j < n; ++j)        {            if (arr[i] > arr[j])            {                tmp = arr[i];                arr[i] = arr[j];                arr[j] = tmp;            }        }    }}int main(int argc, char** argv){    int arr[8] = { 3, 1, 5, 7, 2, 4, 9, 6 };    std::cout << "顺序前:" << std::endl;    printfArray(arr, 8);    <pre name="code" class="cpp">    bubbleSort(arr, 8);    std::cout << "顺序后:" << std::endl;    printfArray(arr, 8);    return 0;}
效率:

时间复杂度:O(n^2)

0 0
原创粉丝点击