冒泡排序
#include<iostream>
using namespace std;
// 参数1 数组首地址,参数2 数组长度
void bubbleSort(int*arr,int len)
{
for(int i=0;i<len-1;i++)
{
for(int j=0;j<len-1-i;j++)
{
//如果j>j+1,交换数字
if(arr[j]>arr[j+1])
{
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
}
// 打印数组
void printArray(int*arr,int len)
{
for(int i=0;i<len;i++)
{
cout<<arr[i]<<endl;
}
}
int main()
{
//指针数组函数,案例
//1、创建数组
int arr[10]={7,2,3,5,4,1,0,8,10,9} ;
//数组长度
int len =sizeof(arr)/sizeof(arr[0]);
//2、创建函数实现冒泡排序
bubbleSort(arr,len);
//3、打印排序后的数组
printArray(arr,len);
system("pause");
return 0;
}
元素个数:
int arr[10]={7,2,3,5,4,1,0,8,10,9} ;
//数组长度
int len =sizeof(arr)/sizeof(arr[0]);
排序的总次数:元素个数-1;
对比的总次数:元素个数-1-排序次数;
冒泡排序代码:
for(int i=0;i<len-1;i++)
{
for(int j=0;j<len-1-i;j++)
{
//如果j>j+1,交换数字
if(arr[j]>arr[j+1])
{
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
交换次序代码:
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;