数据结构实验8各种排序算法

#include
#include
#include
using namespace std;
int r[105];
//冒泡排序
void BubbleSort(int r[],int n)
{
    int low=1,high=n;

    int flag=1;
    int ans=0;
    while(lowr[i+1])
        {
            swap(r[i],r[i+1]);
           flag=1;

        }
        high--;
         if(flag==0)
            break;
        for(int i=high;i>low;i--)
        if(r[i-1]>r[i])
        {
            swap(r[i],r[i-1]);
            flag=1;

        }
  low++;
        if(flag==0)
            break;

    }
}
//冒泡排序写法2
void BubbleSort2(int r[],int n)
{
    int exchange=n;
    int bound;
    while(exchange!=0)
    {
        bound=exchange;
        exchange=0;
        for(int j=1;jr[j+1])
        {
            swap(r[j],r[j+1]);
             exchange=j;

        }


    }
}
//双向冒泡排序
void BubbleSort3(int r[],int n)
{
    for(int i=1;i<=n-1;i++)

    {
        for(int j=1;j<=n-i;j++)
            if(r[j]>r[j+1])
            swap(r[j],r[j+1]);
    }
}
//快排
int Patition(int r[],int first,int end)
{
    int i=first;
    int j=end;
    while(i0&&r[0]=1;d--)
    {int i,j;
        for( i=d+1;i<=n;i++)
        {
            r[0]=r[i];
            for(j=i-d;j>0&&r[0]

 

你可能感兴趣的:(数据结构课程作业)