zoukankan      html  css  js  c++  java
  • 排序的一些东西

    内部排序(所有数据加载到内存中):交换式排序:冒泡和快速。冒泡如下:

    for(int i = 0;i<arr.length-1;i++)

    {  for(int j = 0;j<arr.length-1-i;j++)

      {

         if(arr[j]>arr[j+1])

         int temp = arr[j];

         arr[j]=arr[j+1];

         arr[j]=temp;

      }

    }//把大的往后走

    选择排序:从欲排序的数据中,按某一原则,选出一元素,和其他元素按规则进行交换,从而达到排序目的.如下:

    for(int i=0;i<arr.length-1;i++)

    {

      min=arr[i];

      minIndex=i;

      for(int j=i+1;j<arr.length;j++)

        {

          if(min<arr[j])

            min=arr[j];

            minIndex=j;

        }

      int temp=arr[i];

      arr[i]=arr[minIndex];

      arr[minIndex]=temp;

    }

    插入式排序:插入排序、谢尔排序、二叉树排序。

    插入排序:一开始分为有序表和无序表,一开始有序表只有一个数吗,无序表有n-1个数。用无序表的数依次和有序表比较,并进行插入。

    如下:

    for(int i = 1;i<arr.length;i++)

    {

      int insertVal= arr[i];

      int index = i-1;

      while(index>=0&&insertVal<arr[index])

        {

          arr[index+1]=arr[index];

          index--;

        }

        arr[index+1]=insertVal;

    }

  • 相关阅读:
    eventbus3-intellij-plugin插件搜不到
    flutter控件之CheckBox
    Java中常见数据结构:list与map -底层如何实现
    flutter控件之RadioButton
    git add Untracked files
    执行git push出现"Everything up-to-date"
    用flutter写一个精美的登录页面
    Android Studio最全插件整理
    Mac下git的环境搭建和基本使用
    上周热点回顾(7.1-7.7)团队
  • 原文地址:https://www.cnblogs.com/kanego/p/1990522.html
Copyright © 2011-2022 走看看