快速排序与冒泡排序的区别

/*快速排序复杂度和冒泡是一样的,但是又优于冒泡排序
因为在快速排序中它每次找出最大值只是交换下标索引;
而冒泡排序每次交换都是值交换,改变了内存中储存的值。
所以快速排序优于冒泡排序,但是没得什么用,二者的时
间复杂度都是o(n^2),空间复杂度为o(1).
*/


```cpp
#include<iostream>
using namespace std;
int main(){
	int a[10]={2,45,1,5,6,7,46,12,95,35};//测试数据 
	int i,j;
	for(i=0;i<10;i++){
		int index=0;//每次存储最大值的下标 
		for(j=1;j<10-i;j++){
			if(a[j]>a[index]){//把最大值的下标永远的存储在index中 
				index=j;
			}
		}
		//把最大值存入10-i位置, 
		int temp=a[10-i]; 
		a[10-i]=a[index];
		a[index]=temp;
	}
	for(i=0;i<10;i++){
		cout<<a[i]<<endl;
	} 
	return 0;
}  

发布了29 篇原创文章 · 获赞 12 · 访问量 6878

猜你喜欢

转载自blog.csdn.net/Zheng_lan/article/details/103341752
今日推荐