简单算法
Mike_Shine
BUPT.
展开
-
简单算法的Python实现1--冒泡排序
介绍:冒泡排序作为最简单的排序,虽然效率较为低下,但是因为容易理解而且简单,是面试常见的考题。其基本思想是:每次比较两个相邻的元素,如果元素顺序不对,就将其交换。这样循环一轮,就会得到最小/大的。然后做 (len-1)轮就可以将所有归位。这里需要注意的是,冒泡排序是稳定的排序算法。(稳定这里不用再给你解释了。)时间复杂度:O(n^2),很好理解。 所以在很多时候因为要全部遍历数组,导致时间消耗比...原创 2018-06-22 09:51:51 · 304 阅读 · 0 评论 -
简单算法的Python实现2--快速排序
介绍:所谓快速排序,是针对之前的冒泡排序来说的,其核心思想是用基准值比较。一般基准值选择第一个元素,然后依次从右向左,从左向右找到比基准值小的和大的,各自放到一边,之后移动基准值。此时基准值左边的都比他小,右边都大。之后对左边的递归执行相同的操作,右边同理。时间复杂度:O(n*logn) 对于这里的时间复杂度不太理解,看一下课本源代码:运行结果:...原创 2018-06-22 10:13:53 · 192 阅读 · 0 评论 -
简单算法的Python实现3--折半查找
介绍:折半查找是一种快速查找的方式。核心思想是选出中间的值为基准值,如果待查找的值比中间小,则向前折半,把前面一半的中间值作为基准值,一直到找到,或者找不到为止。优点:时间复杂度较低,对于时间的消耗较少,非常适用于频繁查找的情况。缺点:输入要有序源代码:运行结果:...原创 2018-06-22 10:56:50 · 3058 阅读 · 0 评论 -
简单算法的Python实现4--矩阵乘法
介绍:这里没什么特别说明的,关键是要根据矩阵乘法的规则来写,还有就是说行列元素个数要区分开。初始化的写法也要注意。源代码:原创 2018-06-22 11:15:44 · 1634 阅读 · 0 评论