• (简单)冒泡和直接选择排序同时调用swap算法


    void swap(int &a , int &b)
    {
        int temp;
        temp = a;
        a=b;
        b=temp;
    }
    
    void bubble(int a[],int n)
    {   int i,j,count; //只用到了2个变量i和j,一次性做对
    
        for(j=0;j<n-1;j++){ //3个元素2趟排序
            count = 0;
            for(i=0;i<n-1-j;i++){//算法1:在一趟排序中,若前面元素大于后面则交换
                if(a[i]>a[i+1]){
                count++;
                swap(a[i],a[i+1]);
                }
            }
            if(count==0) break;
        }
    }
    
    ********************
    
    void swap(int &a, int &b)
    {
        int temp =a;
        a=b;
        b=temp;
    }
    
    //思想:选一个最小的依次放入a[0] a[1] 的位置
    void easy(int a[] , int n)
    {
        int min,flag,i,j;
        for(j=0;j<n-1;j++){ //3个元素要3趟
            min = a[j]; flag = j;
            for(i=j;i<n;i++){//从区间[i,n]找个最小的放入i指向的位置
                if(a[i]<min){
                    min = a[i]; flag = i ; //2句话必须用括号括起来
                }
            }
            swap(a[j],a[flag]);
        }
    }
  • 相关阅读:
    6-1
    5-9
    5-8
    5-7
    5-6
    实验4-1:掌握Android应用调试方法、添加新界面
    实验3:理解Activity 的生命周期
    R.java常见问题解决方案
    配置Android模拟器
    第02周实验: 变量、算术运算和数据类型
  • 原文地址:https://www.cnblogs.com/cs-lcy/p/7077005.html
Copyright © 2020-2023  润新知