快速排序的C++实现
2015-07-05 20:32
597 查看
快速排序是一种比较简单而且排序效果很不错的排序算法,具体的介绍可以看这篇文章“这篇文章"
}
void swap(int *data,int i,int j)
{
int temp = data[i];
data[i] = data[j];
data[j] = temp;
}
[/code]
include
using namespace std; void quicksort(int data,int start,int end); void swap(int data,int i,int j); int main() { int data[] = {6,1,2,7,9,3,4,5,10,8}; cout << "before sort,data is" << endl; for(int i = 0;i < 10;++i) cout << data[i] << " "; cout << endl;quicksort(data,0,9); cout << "After sorted,data is:" << endl; for(int i = 0;i < 10;++i) cout << data[i] << " "; return 0;
}
void quicksort(int *data,int start, int end)
{
if(start > end)
return;
int i = start;
int j = end;
int base = data[i];
[code]while (i < j)
{
while(data[j] >= base && j > i)
--j;
while(data[i] <= base && i < j)
++i;
if (i < j)
swap(data,i,j);
}
swap(data,start,i);
quicksort(data,start,i-1);
quicksort(data,i+1,end);
}
void swap(int *data,int i,int j)
{
int temp = data[i];
data[i] = data[j];
data[j] = temp;
}
[/code]
相关文章推荐
- c++一些语法模板
- C++ 随笔 知识点 Sendmessage,FindWindow,keybd_event
- C语言-输出彩色字体
- C++ 函数对象
- c++ primer读书笔记-第八章 标准IO库
- 【学习笔记】【C语言】static和extern对变量的作用
- 【学习笔记】【C语言】static和extern对函数的作用
- C++基于该模型模板包括节目外实例
- C语言中的位操作
- C语言学习笔记:14_内部函数和外部函数
- C++知识点随笔(一):this指针、拷贝构造函数、初始化列表
- 从C语言角度看OC编程里类、类对象
- C语言学习笔记:13_变量和函数的声明与定义
- C语言学习笔记:12_变量的存储方式和生存期
- 【C语言】printf函数和scanf函数典型例子
- C语言-共用体
- C++11初探
- 【C++】通用单链表
- c++ const 类型转化初始化
- 【C/C++学习笔记】memmove()、memcpy()、memccpy()、strcpy()函数整理