经典算法

Posted yunxintryyoubest

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了经典算法相关的知识,希望对你有一定的参考价值。

插入排序:

原理讲解:

插入排序的核心思想:将数组中的所有元素依次和前已经排序好的元素想比较,如果选择的元素比已排序的元素小,则交换,直到所有元素都过

因此,从上面的描述中可以发现,直接插入排序可以用两个循环完成

第一层循环:遍历待比较的所有数组元素  

第二层循环:将本轮选择的元素与已经排好序(之前)的元素进行比较

class   Insert():

  def  sort(self,list):
    for  i in  range(1,len(list)):
      j=i-1

      current=list[i]

      while  list[j]>current  and  j>=0:

        list[j+1]=current

        j-=1

      list[j+1]=current

    return  list

Insert().sort(list)

 

 

 

归并排序

归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分治法的一个非常典型的应用

将已经有序的子序列合并,得到完全有序的序列,再使子序列间有序,若将两个有序列表合并成一个有序表,称为2路归并

 

 

        



以上是关于经典算法的主要内容,如果未能解决你的问题,请参考以下文章

十大经典排序算法总结(桶排序)

十大经典排序算法总结(希尔排序)

十大经典排序算法总结(快速排序)

十大经典排序算法总结(冒泡排序)

十大经典排序算法总结(堆排序)

《算法竞赛入门经典(第2版)》pdf下载在线阅读,求百度网盘云资源