zoukankan      html  css  js  c++  java
  • c++算法联系,冒泡排序,bubble sort,插入排序,insert sort,





    #include <iostream.h>
    #define  MAX 100

    void dispaly(int a[],int n)
    {
        for(int i=0;i<n;i++)
        {
            cout<<"a["<<i<<"]="<<a[i]<<" ";
        }
        cout<<endl;
        
    }

    // bubble sort 冒泡排序
    void bubblesort(int a[],int n)
    {
        int i,j;
        
        for(i=0;i<n-1;i++)
        {
            for(j=0;j<n-i-1;j++)
            {
                if(a[j]>a[j+1])
                {
                    int temp=a[j];
                    a[j]=a[j+1];
                    a[j+1]=temp;
                }

            }
            dispaly(a,n);
        }
    }

    //insert sort 插入排序

    void insertSort(int a[],int n)
    {
        for(int i=1;i<n;i++)
        {
            //for(int j=i;j>0 &&a[j]<a[j-1];j--)
            {
            //    int temp=a[j-1];
            //    a[j-1]=a[j];
            //    a[j]=temp;
            }
            

            
            for(int j=0;j<i &&a[i]<a[i-j-1];j++)
            {
                int temp=a[j-1];
                a[j-1]=a[j];
                a[j]=temp;
            }
            dispaly(a,n);
        }
    }
    void selectSort(int a[],int n)
    {

        for(int i=0;i<n;i++)
        {
            int min=a[i];
            int index=i;
            for(int j=i;j<n-1;j++)
            {
                if(min>a[j+1])
                {
                    min=a[j+1];
                    index=j+1;
                }
            }
            int temp=a[i];
            a[i]=min;
            a[index]=temp;

        }

        /*
        for(int i=0;i<n;i++)
        {
            int index=i;
            for(int j=i;j<n-1;j++)
            {
                if(a[index]>a[j+1])
                {
                    index=j+1;
                }
            }
            int temp=a[i];
            a[i]=a[index];
            a[index]=temp;
        }
        */
    }

    int main ()
    {

        int a[MAX],i;
        for(i=0;i<MAX;i++)
        {
            cin>>a[i];
            if(a[i]==-0)
                break;
        }
        //dispaly(a,i);
        //cout<<"================start sort=================="<<endl;
        //bubblesort(a,i);
        //cout<<"================result======================"<<endl;
        //dispaly(a,i);

        //insertSort(a,i);

        selectSort(a,i);
        dispaly(a,i);
        
        return 0;
    }



  • 相关阅读:
    查找二叉树(BST)
    利用堆计算中位数
    java文件的上传与下载通用版
    input框checkBox全选单选js操作,后台取值
    ArrayList源码简单解析
    echarts柱状图的学习01
    Oracle中的存储过程,存储函数
    简单的Oracle分页公式
    入门级的SSM架构搭建解析
    mybatis动态Sql详解
  • 原文地址:https://www.cnblogs.com/wsq724439564/p/3258147.html
Copyright © 2011-2022 走看看