选择排序和 标准冒泡排序算法 (简单优化后的冒泡排序)
2015-06-18 20:49
330 查看
是标准冒泡排序法
选择排序法
优化后的 冒泡排序法
void bubbleSort(int size , int a[])
选择排序法
void selectSort(int size , int a[])
#include <stdio.h> void bubbleSort(int size , int a[]); void selectSort (int size , int a[]); int main(int argc, const char * argv[]) { // insert code here... printf("Hello, World!\n"); int test[] = {25,15,85,64,3,54,96,21,2,32}; bubbleSort(10, test); for (int i = 0; i < 10; i++) { printf("test[%d] %d \n",i,test[i]); } return 0; } //冒泡 void bubbleSort(int size , int a[]){ int tmp; for (int i = size - 1; i > 0; i-- ) { for (int j = i - 1 ; j >=0 ; j --){ if (a[j] > a[i]) { tmp = a[j]; a[j]=a[i]; a[i] = tmp; } } } } //选择排序 void selectSort(int size , int a[]){ int maxIndex ; int tmp; for (int i = size - 1; i > 0; i-- ) { maxIndex = i ; for (int j = i - 1 ; j >=0 ; j --) { if (a[j] > a[maxIndex]) { maxIndex = j; } } tmp = a[i]; a[i] = a[maxIndex]; a[maxIndex] = tmp; } }
优化后的 冒泡排序法
void bubbleSortOptimized(int size , int a[]){ int tmp; bool isChange = false; for (int i = size - 1; i > 0; i-- ) { isChange = false; for (int j = i - 1 ; j >=0 ; j --){ printf("i = %d j = %d \n",i,j); if (a[j] > a[i]) { isChange = true; tmp = a[j]; a[j]=a[i]; a[i] = tmp; } } if (isChange == false) { break; } } }
相关文章推荐
- 手机吸费代理 高收费电话 电话群呼器
- OC12_自动释放池
- 【转】测试工程师日常工作需要关注的问题
- iOS项目的完整重命名方法图文教程
- [BZOJ 2154] Crash的数字表格
- 黑马程序员------比较器
- 【华为oj】简单密码破解
- 黑马程序员------集合
- 特征值和特征矩阵的意义和应用
- 全局/静态变量初始化为0放在bss段还是data段
- 京东成都研究所奋战618
- OC11_自动释放池
- 吸费电话致富 加值电话合作 声讯电话平台
- Bean对象封装,数据分离
- win8下uboot启动卡制作
- 分布式版本管理git学习资料整理推荐
- 第15周上机实践项目1——用二进制文件处理学生成绩
- UVA 156 Ananagrams
- 黑马程序员——集合框架
- startActivityForResult和setResult详解