美文网首页
算法排序思想

算法排序思想

作者: 奇梦人 | 来源:发表于2019-12-13 20:41 被阅读0次
  1. 二分查找

二分查找针对的是有一个有序的数组集合,每次都通过跟区间的中间元素对比,将待查找的区间缩小为之前的一般,一直查到要找的元素为止。

  1. 桶排序

核心思想是要将怕许的数据分到几个有序的桶里,每个桶里的数据再单独进行排序,桶内排序之后,再把每个桶里的数据按照顺序依次取出,组成的序列就是有序的了。

  1. 冒泡排序

冒泡排序只会操作相邻的俩个数据,每次操作都会对相邻的俩个数据进行比较,再让它们交换为止。

  public void BubbleSort(int [] array){
  if(null == array)   return;
  if(1 == array.length)  return;
    for(int i = 0;i<array.length ; i++){
      //提前推出冒泡循环标志位
      boolean flag  = false ;
      for(int j = 0;j<array.length-i-1;j++){
               if(array[j]>array[j+1]){
                  int temp = array[j+1];
                  array[j+1] = array[j];
                  array[j] = temp;
                  flag = true;
                }
                if(!flag)  break;
         }
      } 
  }

  1. 插入排序

插入算法的核心是取末排序区间的元素,在已排序区间找到合适的位置插入,并保证已排序区间的元素一直有序。重复这个过程,直到未排序区间中元素为空,算法结束。

public void insertionSort(int[] a, int n){
      if(n <=1) return;
      for(int i =1;i < n ; ++i){
        int value = a[i];
        int j = i -1;
        for(;j>=0 ;--j){
          if(a[j] > value){
              a[j+1] = a[j];
          }else{
              break;
          }
        }
        a[j+1] = value;
      }
}

  1. 选择排序

选择排序的思想有点类似于插入排序,也分已排序区间和未排序区间,但是选择排序每次会从未排序区间中找到最小的元素,将其放到已排序区间的末尾。

  1. 归并排序

归并排序的排序思想: 如果要排序一个数组,先把数组从中间分为前后俩个部分,然后对前后俩部分分别排序,再将排序的俩部分合并到一起,这样整个数组就是有序的了。

  1. 快速排序

如果要将排序数组中下标从0 到10之间的一组数据,选择下标 0 到 10之间的任意一个数据作为分区点,然后再遍历这一组数据,将小于分区点的放左边,大于的放在右边,经过这一步骤之后,数组就被分成了三个部分,前部分是小于分区点的,中间部分就是分区点,后面则是大于分区点的,然后将前面小于分区点再分为三个部分,依次循环,直到分区完毕再合并,这时数组已经是有序的了。

相关文章

  • 2018-06-30

    排序算法之归并排序 归并排序算法是排序算法中的经典算法之一,其核心思想是利用归并的思想实现的排序方法,该算法采用经...

  • 第三章:高级排序算法

    归并排序算法(mergeSort) 算法思想:Python使用函数实现: 自底向上的归并排序算法 算法思想:Pyt...

  • 归并排序

    图解排序算法(四)之归并排序 基本思想 归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用...

  • 算法笔记:快排算法与归并排序

    快排算法与归并算法时间复杂度都是O(nlogn)的排序算法。适合大规模的数据排序。思想利用的是分治思想。 归并排序...

  • 算法总结篇-(1)--算法思想

    算法包括三部分:算法思想 + 排序算法 + 查找算法 算法思想: 算法思想 就是 解题思路。常见的解题思路有如下:...

  • 选择排序算法

    一、选择排序算法 选择排序(Selection sort)是一种简单直观的排序算法。 二、算法思想 每一次从待排序...

  • 排序算法(十一)桶排序

    排序算法(十一)桶排序   桶排序(Bucket sort)是计数排序改进版,同样属于非比较排序,该算法的基本思想...

  • 数据结构01-常规排序算法

    第一章 常规排序算法 第一章 常规排序算法一、排序的基本概念排序内部排序与外部排序排序的稳定性二、冒泡排序算法思想...

  • 排序算法(五)归并排序

    排序算法(五 )归并排序 1.算法思路  归并排序(Merge-Sort)是一种基于二叉堆及分而治之思想的排序算法...

  • 快速排序

    快速排序思想 快速排序号称20世纪最伟大的十大算法之一,也是nlogn级别的排序算法,它的思想是类似冒泡排序,是一...

网友评论

      本文标题:算法排序思想

      本文链接:https://www.haomeiwen.com/subject/rufqnctx.html