排序算法
2016-07-12 13:34
197 查看
对各种基本排序算法进行实现。
代码:
代码:
<pre name="code" class="cpp">#include <iostream> #include <string> #include <vector> #include <algorithm> using namespace std; //冒泡排序 void BubbleSort(int v[], int n){ bool flag; for(int i = 1; i < n; i++){ flag = false; for(int j = n - 1; j >= i; j--){ if(v[j] < v[j - 1]){ flag = true; int temp = v[j]; v[j] = v[j - 1]; v[j - 1] = temp; } } if(flag == false) return; } } //插入排序 void InsertSort(vector<int> &L, const int left, const int right){ //vector此处必须传入引用,否则只是拷贝,无法改变原本的值。 for(int i = left + 1; i <= right; i++){ if(L[i] < L[i - 1]){ int temp = L[i]; int j = i - 1; while(j >= left && temp < L[j]){ L[j + 1] = L[j]; j--; } L[j + 1] = temp; } } } void main(){ int v[] = {5,3,8,4,0,9,1,8}; vector<int> L(v,v + 8); int n = 8; BubbleSort(v,n); InsertSort(L,0,7); int size = L.size(); //cout << v; // 错误!这个输出的是v的地址 for(int i = 0; i < 8; i++) cout << v[i]; cout << endl; for(int i = 0; i < 8; i++) cout << L[i]; }
相关文章推荐
- QlikView 笔记(四) 关于时间控制数据的抽取计划
- 基于MFC和OpenCV的图像标注工具
- java生成一年中假日表(包括周末和法定假期),用于计算一年中的工作日
- Codeforces Round #361 (Div. 2) A. Mike and Cellphone ( 模拟 )
- CCCC/GPLT L1-010 比较大小
- 使用InspectiveC来查看调用堆栈
- Linux修改文件时候,产生了一个.swap交换文件,如何删除
- 天梯-L2-001. 紧急救援
- deban8 linux 下 virtual box black arch linux 连不了网
- IOS UIScrollview约束问题
- ACM--枚举暴力--HDOJ 1017--A Mathematical Curiosity--水
- Android数据存储
- 116. Populating Next Right Pointers in Each Node && 117. Populating Next Right Pointers in Each Node II
- [置顶] 日常学习记录
- 博客首自戒
- web.xml
- Java Security:Java加密框架(JCA)简要说明
- 快速幂取模——Pupu(HDU 3003)
- 安装GenyMotion模拟器(Mac)
- 'FND: Application Module Pool Enabled'