c++ 快速排序实现
2014-08-25 16:23
204 查看
排序功能类的声明和实现
测试代码
#ifndef QUICKSORT_H #define QUICKSORT_H template<typename T> class QuickSort { T* data; int length; void sort(int s,int e); public: void run(); QuickSort(T* dt,int l):data(dt),length(l){}; virtual ~QuickSort(){}; }; template<typename T> void QuickSort<T>::run() { if(data && length>1) { sort(0,length-1); } } template<typename T> void QuickSort<T>::sort(int s,int e) { if(s<e) { T tag=data[e]; T temp=data[e]; int i=s; for(int j=s;j<e;++j) { if(data[j]<tag) { temp=data[i]; data[i]=data[j]; data[j]=temp; ++i; } } data[e]=data[i]; data[i]=tag; sort(s,i-1); sort(i+1,e); } } #endif // QUICKSORT_H
测试代码
#include <iostream> #include "./include/QuickSort.h" using namespace std; int main() { char a[]="dsbuvdbif"; //数组长度 int length=9; QuickSort<char> qs_int(a,length); qs_int.run(); for(int i=0;i<length;++i) cout <<a[i]<< endl; return 0; }
相关文章推荐
- C/C++面试题:编程实现快速排序
- 快速排序(C++模版技术实现)
- 菜鸟和你一起学“快速排序” C++实现
- C++实现快速排序
- C++快速排序实现(quicksort)
- C语言实现快速排序(完整版)DVE-C++编译通过
- 快速排序实现_c++
- C++中调用库函数实现快速排序
- [算法导论] 快速排序以及最大堆的C++实现
- 快速排序和插入排序的C++实现
- 快速排序的C++实现代码
- c++ 实现快速排序与二分查找 源代码
- 快速排序的C++实现
- 快速排序(快排)算法的C++两种实现
- c++实现快速排序(挖坑填数版)
- c++模版实现快速排序
- C++ 快速排序的实现 左右同时开弓
- 【算法导论】用C++实现快速排序
- C++中利用List容器实现快速排序
- c++实现快速排序