quick sort 简单C++实现
2015-05-12 16:29
337 查看
// algorithms.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "iostream" using std::cout; using std::endl; void quickSort(int *a, int start, int end); int partition(int *a, int start, int end); void swap(int &i, int &j); int main() { int a[10] = { 121, 22, 13, 34, 53, 62, 71, 48, 59, 104}; quickSort(a, 0, 9); for (size_t i = 0; i < 10; i++) { cout << a[i] << " "; } return 0; } void swap(int &i, int &j){ int temp = i; i = j; j = temp; } void quickSort(int *a, int start, int end) { if (start < end) { int q = partition(a, start, end); quickSort(a, start, q - 1); quickSort(a, q + 1, end); } } int partition(int *a, int start, int end) { int friendPar = a[end]; int i = start - 1; for (int j = start; j <= end - 1;j++) { if (a[j]<friendPar) { ++i; swap(a[j], a[i]); } } swap(a[++i], a[end]); return i; }
相关文章推荐
- [转贴]WebService的简单实现 C++
- c++ 线性表简单实现
- 简单链式二叉树(C++模版技术实现)
- c++ 虚函数实现原理简单剖析
- 一个简单的C++的RTTI实现
- 通用型C/C++程序性能测试Benchmark的简单实现
- 策略模式与简单工厂的C++实现
- C++实现简单的五子棋程序
- C++ 引用计数技术及智能指针的简单实现
- C++ Primer Plus的string类的简单实现
- C++实现简单的内存块自动管理
- 【转】C++ 引用计数技术及智能指针的简单实现
- C++ 几种智能指针的简单实现
- 用C\C++实现离散数学简单逻辑运算
- 使用C++实现一套简单的状态机模型——实例
- 【单例模式】简单C++实现
- 简单工厂设计模式C++实现
- C++使用模板实现简单的singleton
- 简单的插入排序算法分析与C++实现