中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

C++STL排序算法驗證

2018-07-20    來源:open-open

容器云強(qiáng)勢上線!快速搭建集群,上萬Linux鏡像隨意使用
/**********************************************************************
*這里是vs2010工程中用來測試的程序,一并附上
*********************************************************************/
// mySort.cpp : 定義控制臺應(yīng)用程序的入口點。
// 關(guān)于一些排序的知識:
/*
        對于一些語言(如java),一般的對象排序,通常比較元素最為費事,而移動元素時比較多。在排序算法中,歸并排序比較次數(shù)最少,
    所有在java標(biāo)準(zhǔn)庫中排序大多數(shù)都是用歸并排序。
        對于C++而言,對于一般排序,當(dāng)對象很大時,復(fù)制對象耗時比較多,而比較元素耗時較少。 在排序算法中,快速排序復(fù)制對象次數(shù)最少。
    而C++的標(biāo)準(zhǔn)庫中的排序算法也一般采用快速排序(變種快排或快排與其他排序結(jié)合,而不是簡單的采用標(biāo)準(zhǔn)快排)。C++對象比較耗時少,
    是因為編譯器處理函數(shù)模板的擴(kuò)展時具有強(qiáng)大的執(zhí)行在線優(yōu)化的能力?焖倥判蛞彩且阎獙嵺`中最快的排序算法,時間復(fù)雜度為O(NlogN)。
    雖然快排的最壞情況為二次函數(shù),但稍加優(yōu)化就能有效避免這種情況。
*/
#include "stdafx.h"
#include <iostream>
#include "quickSort.h"
#include "heapSort.h"
#include "shellSort.h"
#include "mergeSort.h"
#include <time.h>
#include <algorithm>
 
#define random(x) (rand()%x)
 
int _tmain(int argc, _TCHAR* argv[])
{
    long long start, end;
    start = clock();
    vector<int> vecInt;
    int i= 0;
    for (; i < 15; i++)
    {
        vecInt.push_back(random(67));
        cout<<vecInt[i]<<" ";
    }
    cout << endl;
 
    //sort(vecInt.begin(), vecInt.end());
    //quickSort(vecInt);
    //heapMaxSort(vecInt);
    //heapMinSort(vecInt);
    //shellSort(vecInt);
    //mergeSort(vecInt);
    i = 0;
    for (;i < 15; i++)
    {
        cout<<vecInt[i]<<" ";
    }
    cout <<endl;
    end = clock();
    long long time = end -start;
    cout<<time<<"@@@@@@@@@@@@"<<endl;
    return 0;
}

標(biāo)簽:

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:C#調(diào)用SQLite演示代碼

下一篇:簡體轉(zhuǎn)換成繁體