• 算法冒泡排序(一个简单的排序)


    冒泡排序是一个比较简单的排序

    但我觉得冒泡排序有一个小点(因为有些同学都不加)

    冒泡排序可以设置一个flag来判断是否排完序,如果一遍排下来没有进行交换,就算是排完了,就不需要之后的循环,可以直接break。

    代码:

    void pop(int *arr,int size)
    {
      for(int i=size-1;i>0;i--)
      {
        bool flag = true;
        for(int j=0;j<i;j++)
        {
          if(arr[j]>arr[j+1])
          {
            int temp = arr[j+1];
            arr[j+1] = arr[j];
            arr[j] = temp;
            flag = false;
          }
        }
        if(flag)
        {
          break;
        }
      }
    }

    void pop2(int *arr,int len)
    {
      for(int i=0;i<len-1;i++)
      {
        bool flag = true;
        for(int j=len-2;j>=i;j--)
        {
          if(arr[j+1]<arr[j])
          {
            int temp = arr[j+1];
            arr[j+1] = arr[j];
            arr[j] = temp;
            flag = false;
          }
        }
        if(flag) break;
      }
    }

  • 相关阅读:
    MySQL行级锁、表级锁、页级锁详细介绍
    Spring REST是什么?(转)
    Spring REST(转)
    联系人项目
    三级联动(有刷新)
    Java中点击按钮返回上一页
    Java中隐藏显示效果
    理解RESTful架构(转)
    什么是REST?以及RESTful的实现(转)
    JSTL 核心标签库 使用(转)
  • 原文地址:https://www.cnblogs.com/LTprogrammer/p/13166256.html
Copyright © 2020-2023  润新知