主题:[讨论]帮忙看下这到快速排序算法哪里出错了
#include <iostream>
using namespace std;
void sort(int num[], int n);
int main()
{
int number[] = {36,25,48,12,65,43,20,58};
int m = sizeof(number) / sizeof(number[0]);
cout <<"未排序前的数据: ";
for(int i = 0; i < m; i++)
{
cout <<number[i]<<" ";
}
sort(number,m);
cout <<"排序好的数据:";
for(int j = 0; j < m; j++)
{
cout <<number[j]<<" ";
}
cout <<endl;
return 0;
}
void sort(int num[], int n)
{
int i,j,temp;
for(i = 1; i < n; i++)
{
temp = num[i];
for(j = i - 1; j >= 0; j--)
{
if(temp < num[j])
num[j + 1] = num[j];
else
break;
num[j + 1] = temp;
}
}
}
using namespace std;
void sort(int num[], int n);
int main()
{
int number[] = {36,25,48,12,65,43,20,58};
int m = sizeof(number) / sizeof(number[0]);
cout <<"未排序前的数据: ";
for(int i = 0; i < m; i++)
{
cout <<number[i]<<" ";
}
sort(number,m);
cout <<"排序好的数据:";
for(int j = 0; j < m; j++)
{
cout <<number[j]<<" ";
}
cout <<endl;
return 0;
}
void sort(int num[], int n)
{
int i,j,temp;
for(i = 1; i < n; i++)
{
temp = num[i];
for(j = i - 1; j >= 0; j--)
{
if(temp < num[j])
num[j + 1] = num[j];
else
break;
num[j + 1] = temp;
}
}
}