中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C語言排序算法之冒泡排序實現方法【改進版】

發布時間:2020-10-22 14:03:00 來源:腳本之家 閱讀:159 作者:liyuxia713 欄目:編程語言

本文實例講述了C語言排序算法之冒泡排序實現方法。分享給大家供大家參考,具體如下:

冒泡排序和改進的冒泡排序

/*-------------------------------------------------------------------------------------------
Bubble_sort.h
冒泡排序: 時間復雜度為O(N^2)
改進的冒泡排序: 時間復雜度仍為O(N^2)
  一般的冒泡排序方法有可能會在已經排好序的情況下繼續比較,改進的冒泡排序
  設置了一個哨兵flag,如果一次for循環沒有進行交換,則元素已經排好序,由哨兵控制退出循環。
-------------------------------------------------------------------------------------------*/
#ifndef BUBBLE_SORT_H
#define BUBBLE_SORT_H
#include "typedef.h"
#include "swap.h"
//冒泡排序
void Bubble_sort(T *a, int n)
{
  for(int i=n-1; i != 0; --i)
    for(int j=0; j != i; ++j)
      if(a[j+1] < a[j]) swap(a[j+1],a[j]);
}
//改進的冒泡排序
void Improved_Bubble_sort(T *a, int n)
{
  for(int i=n-1; i != 0; --i)
  {
    bool flag = true;
    for(int j=0; j != i; ++j) //這一趟遍歷如果沒有交換,則已完成排序
      if(a[j+1] < a[j]) { swap(a[j+1],a[j]); flag = false; }
    if(flag == true) break;
  }
}
#endif

希望本文所述對大家C語言程序設計有所幫助。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

社旗县| 彰化县| 乐东| 大庆市| 肥城市| 安吉县| 余姚市| 博客| 栾川县| 余干县| 宜兰市| 固原市| 新乡市| 丹阳市| 隆昌县| 依安县| 寿光市| 垣曲县| 长泰县| 彭州市| 宽城| 应城市| 黑水县| 正安县| 体育| 阿克陶县| 和林格尔县| 海林市| 昔阳县| 怀仁县| 呼图壁县| 蒲江县| 怀宁县| 承德市| 广汉市| 滕州市| 台东市| 婺源县| 钦州市| 德清县| 林州市|