一.递归函数 在函数内部,可以调用其他函数,如果一个函数在内部调用本身,这个函数就是递归函数 1.递归的基本原理: 每一次函数调用都会有一次返回.当程序流执行到某一级递归的结尾处时,它会转移到前一级递归继续执行(调用本身函数) 递归函数中,位于递归调用前的语句和各级被调函数具有相同 ...
冒泡排序的时间复杂度是O N 冒泡排序的思想: 每次比较两个相邻的元素, 如果他们的顺序错误就把他们交换位置 比如有五个数: , , , , , 从大到小排序, 对相邻的两位进行比较 第一趟: 第一次比较: , , , , 第二次比较: , , , , 第三次比较: , , , , 第四次比较: , , , , 经过第一趟比较后, 五个数中最小的数已经在最后面了, 接下来只比较前四个数, 依次类推 ...
2017-08-15 18:07 0 2129 推荐指数:
一.递归函数 在函数内部,可以调用其他函数,如果一个函数在内部调用本身,这个函数就是递归函数 1.递归的基本原理: 每一次函数调用都会有一次返回.当程序流执行到某一级递归的结尾处时,它会转移到前一级递归继续执行(调用本身函数) 递归函数中,位于递归调用前的语句和各级被调函数具有相同 ...
上一篇文章,介绍了一个非常快的排序算法--桶排序,但是它的缺点就是太耗资源了,这次要实现的算法就不用太耗资源了,它就是冒泡排序。 问题提出: 将以下数据升序排列:9, 2, 8, 6, 4 冒泡排序原理: 冒泡排序就是遍历数据,每次只与下一个数字比较,如果这两个数顺序 ...
比如某数组 a = [12, 35, 99, 18, 1] 将其从小到大冒泡排序 则 第一趟: 第一次:a = [12,35,99,18,1] //12与35比较 第二次:a = [12,35,99,18,1]//35与99比较 第三次:a = [12,35,18,99,1]//99 ...
要点 冒泡排序是一种交换排序。 什么是交换排序呢? 交换排序:两两比较待排序的关键字,并交换不满足次序要求的那对数,直到整个表都满足次序要求为止。 算法思想 它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复 ...
很早接触过冒泡排序法,但一直没有真正的理解,只是为了记住而学习,今天又重新看了一下,其实冒泡排序法第一次排序会把最大的冒到最上面,第二次会把次大的泡冒到最大的后面,一次类推····,另外在排序的次数上会逐渐减少。看代码: 其实还可以优化一下,当发现没有进行交换证明已经排好 ...
冒泡排序算法的原理如下: 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 针对所有的元素重复以上的步骤 ...
冒泡排序的时间复杂度是O(N^2) 冒泡排序的思想: 每次比较两个相邻的元素, 如果他们的顺序错误就把他们交换位置 比如有五个数: 12, 35, 99, 18, 76, 从大到小排序, 对相邻的两位进行比较 第一趟: 第一次比较: 35, 12, 99, 18, 76 第二次 ...
冒泡排序 一、python冒泡排序算法: #enconding = utf-8 def Bubble_Sort(listx):#i确定比较次数for i in xrange(len(listx)-1):#j确定比较的是哪个元素for j in xrange(len(listx ...