C++STL排序算法验证

C++STL排序算法验证,第1张

概述C++STL排序算法验证

下面是内存溢出 jb51.cc 通过网络收集整理的代码片段。

内存溢出小编现在分享给大家,也给大家做个参考。

/***********************************************************************这里是vs2010工程中用来测试的程序,一并附上*********************************************************************/// mySort.cpp : 定义控制台应用程序的入口点。// 关于一些排序的知识:/*        对于一些语言(如java),一般的对象排序,通常比较元素最为费事,而移动元素时比较多。在排序算法中,归并排序比较次数最少,    所有在java标准库中排序大多数都是用归并排序。        对于C++而言,对于一般排序,当对象很大时,复制对象耗时比较多,而比较元素耗时较少。 在排序算法中,快速排序复制对象次数最少。    而C++的标准库中的排序算法也一般采用快速排序(变种快排或快排与其他排序结合,而不是简单的采用标准快排)。C++对象比较耗时少,    是因为编译器处理函数模板的扩展时具有强大的执行在线优化的能力。快速排序也是已知实践中最快的排序算法,时间复杂度为O(NlogN)。    虽然快排的最坏情况为二次函数,但稍加优化就能有效避免这种情况。*/#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;}

以上是内存溢出(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

总结

以上是内存溢出为你收集整理的C++STL排序算法验证全部内容,希望文章能够帮你解决C++STL排序算法验证所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1232459.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存