算法导论学习日记(7)冒泡排序的递归实现
来源:互联网 发布:windows xp开机蓝屏 编辑:程序博客网 时间:2024/06/05 14:28
一开始思考这个问题的时候冒泡排序是不能用递归实现的,因为他需要对整个数组进行操作,而根据分治法,必须要有分解,解决和合并三个部分,所以分解数组缩小规模看起来似乎是不能行的。后来想了想,发现削减一层循环,做成递归就好。所以默默的说一句,这个递归就是非递归方式的 外层循环啊。
#include <iostream>using namespace std;void BubbleSort(int *a,int n,int j){ if(j==n) return ; int i=0; for(i=n;i>j;i--) { if(a[i-1]>a[i]) { int temp=a[i]; a[i]=a[i-1]; a[i-1]=temp; } } BubbleSort(a,n,j+1);}int main(){ int a[10]={9,8,7,6,5,4,3,2,1,0}; BubbleSort(a,9,0); int i=0; for(i=0;i<10;i++) { cout<<a[i]<<" "; } cout<<endl; return 0;}
0 0
- 算法导论学习日记(7)冒泡排序的递归实现
- 算法导论学习日记(6)冒泡排序
- 算法导论学习日记(4)插入排序的递归版本
- 算法导论学习日记(1)--插入排序
- 算法导论学习日记(2)--选择排序
- 算法导论学习日记(3)--合并排序
- 《算法导论》5、冒泡排序实现(C++)
- 学习算法导论——冒泡排序
- 【算法】冒泡排序与选择排序的递归实现
- 算法导论学习2.3-4 插入排序的递归版本
- 算法导论:堆排序递归实现 (c语言)
- 算法导论:堆排序非递归实现(c语言)
- 学习日记:冒泡排序
- 冒泡排序算法分析——《算法导论》学习笔记
- 常见的五类排序算法图解和实现(交换类:冒泡排序,递归的快速排序)
- 常见的五类排序算法图解和实现(交换类:冒泡排序,递归的快速排序)
- 算法导论排序算法之冒泡排序(三)
- 【算法导论】冒泡排序法
- 继承相关的面试题
- 各类程序员学习路线图
- (课堂讨论)关于编码规范
- 关于 iOS 10 中 ATS 的问题
- zookeeper两个经典问题-带着问题看源码
- 算法导论学习日记(7)冒泡排序的递归实现
- 银联"押宝"二维码支付 背后还有一片纷争江湖
- arduino学习系列——DHT11温湿度传感器的使用
- 数据结构 邻接矩阵 DFS
- 小程序实现局部元素隐藏
- 索引器
- 互联网java软件工程师
- CentOS 6.6下Redis安装配置记录
- Delphi“尚未调用CoInitialize”解决方法