[算法]快排
来源:互联网 发布:淘宝被扣48分如何重开 编辑:程序博客网 时间:2024/03/28 18:24
/*Name:QucikSort Actor:HTTime:2015年10月8日Error Reporte:1.注意处理相等的情况,小心下标越界*/#include"stdio.h"#include"string.h"#include"stdlib.h"#define N 10010//最优 O(nlogn)//最差 O(n^2)int a[N];void qs(int *arr, int f, int rear)//分治求解函数{if (f >= rear) return;int i, j, t;int r = rear;//r是用来分割的首元,小的在i前,大的在i后for (i = f - 1, j = f; j != r; j++)//i初始化,看起来有些危险,小心不要动{if (arr[j] <= arr[r])//小了就往前放,i扩增;否则不变debug出现了下标越界问题{t = arr[j];arr[j] = arr[i + 1];arr[i + 1] = t;i++;}}t = arr[r];//把首元放到该放的位置上arr[r] = arr[i + 1];arr[i + 1] = t;qs(arr, 0, i - 1);qs(arr, i + 1, r);}void quciksort(int *arr, int n){qs(arr, 0, n-1);}int main(){int i, j;int n;scanf("%d", &n);for (i = 0; i < n; i++){scanf("%d", &a[i]);}quciksort(a, n);for (i = 0; i < n; i++){printf("%d ", a[i]);}printf("\n");system("pause");return 0;}
0 0
- 算法----快排算法
- 快排算法
- 快排算法
- 快排算法
- 快排算法cmp
- 快排算法
- 算法导论--->快排
- 排序算法--快排
- 快排算法quickSort
- 快排算法
- 随机快排算法
- [算法]快排
- c#快排算法
- 算法 排序 快排
- 快排算法
- 大话算法-快排
- 算法-快排
- 快排算法
- 成员变量和局部变量有什么区别?
- 博客第一篇
- hdu4278Faulty Odometer 数位dp
- JavaScript+Canvas 实现网页截屏
- 成员变量和局部变量有什么区别?
- [算法]快排
- C++ Primer const变量
- JAVA组件大全复选框,选项按钮,复选方框,下拉式列表的使用介绍
- c++ primer 学习笔记1_基本内置类型
- 理解多线程中的join方法
- jquery组织结构图插件 (基于jit-yc 做可拖动、自适应伸缩的orgchart)
- Anroid常用的辅助类(一)——网络相关
- leetcode 21:Merge Two Sorted Lists(15-10-9)
- iOS项目上传到AppStore步骤流程