【IT面试题】排序算法
来源:互联网 发布:软件前景分析 编辑:程序博客网 时间:2024/04/30 02:01
出处:《算法导论》
KEY1:插入排序
//插入排序#include <iostream>using namespace std;int main(){ int i, j, key; int A[6] = {8, 2, 4, 9, 3, 6}; for(j = 1; j <= 5; j++) {key = A[j];i = j - 1;while(i >= 0 && A[i] > key){ A[i+1] = A[i]; i = i - 1;}A[i+1] = key; } for(int i = 0; i <= 5; i++) cout<<A[i]<<' ';}
KEY2:快速排序
//快速排序//平均时间复杂度O(nlogn) #include <iostream>using namespace std;int partition(int A[], int p, int q){ int i, j, x; x = A[p]; i = p; for(j = i + 1; j <= q; j++) { if(A[j] <= x) { i = i + 1; swap(A[j], A[i]); } } swap(A[p], A[i]); return i; }void Quicksort(int A[], int p, int r){ if(p < r) { int q = partition(A, p, r); Quicksort(A, p, q - 1); Quicksort(A, q + 1, r); } }int main(){ int A[ ] = {6,10,13,5,8,3,2,11,4,12}; Quicksort(A, 0, 9); for(int i = 0; i <= 9; i++) cout<<A[i]<<' '; return 0; }
- 【IT面试题】排序算法
- 排序算法面试题
- 排序算法常见面试题
- 面试题-----排序算法之选择排序
- 常见面试题排序算法(二)
- Java基础面试题3(排序算法)
- 经典面试题-- 排序算法(一)
- 十大排序算法面试题
- 排序算法总结及面试题
- 【算法面试题】交换排序问题
- 面试题之常用排序算法02
- PHP算法面试题 排序和查找
- 程序员面试题总结一:排序算法
- IT面试题
- iT面试题收藏
- IT面试题
- IT 面试题
- IT公司面试题
- 结构体的定义
- etc-group文件
- Tomcat 6.0配置连建池的方式:
- Scanf的输入类型
- 发货呼呼尽快经济和
- 【IT面试题】排序算法
- android获得view的宽和高
- grep使用
- python项目练习四:新闻聚合
- ActiveX控件打包成Cab置于网页中自动下载安装
- 条件语句风格
- etc目录详解
- poj2104 hdu2665 划分树
- linux下tar.gz、tar、bz2、zip等命令小结