算法
wang725
这个作者很懒,什么都没留下…
展开
-
算法 - 快速排序 - python
先看一下这幅图: 基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。这里的示例是以第一个数为基准点做比较, 把整个序列看做一个数组,把第零个位置看做中轴,和最后一个比,如果比它小交换,比它大不做任何处理;交换了以后再和小的那端...原创 2018-08-09 21:59:52 · 161 阅读 · 0 评论 -
算法 - 快速排序 - Java
http://blog.csdn.net/wangkuifeng0118/article/details/7286332 说来感到惭愧,昨天看别人的博客上面一一讲了一些算法,其实这些算法在大学都学过,不过几乎全部忘记了。虽然现在做java上层开发基本上用不到算法,但是还是感觉算法是一种思想,是一种灵魂,所以又不仅翻开了严蔚敏老师的数据结构,一个一个把以前忘记的算法实现一遍。...转载 2013-07-12 00:41:35 · 503 阅读 · 0 评论 -
算法 - 斐波那契数列
斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n>=2,n∈N*)...原创 2018-08-06 22:46:14 · 652 阅读 · 0 评论 -
算法 - 冒泡排序
从小到大排序: 冒泡排序的思想: 每次比较两个相邻的元素, 如果他们的顺序错误就把他们交换位置 冒泡排序原理: 每一趟只能将一个数归位, 如果有n个数进行排序,只需将n-1个数归位, 也就是说要进行n-1趟操作(已经归位的数不用再比较)def bubble_sort(lst): for i in range(len(lst)-1): for j in range(len(lst...原创 2018-08-07 22:16:45 · 113 阅读 · 0 评论 -
深度优先算法和广度优先算法
参考并感谢Leo_wlCnBlogs1.写在前面图的存储结构有两种: 一种是基于二维数组的邻接矩阵表示法。 另一种是基于链表的的邻接表。在邻接矩阵中,可以如下表示顶点和边连接关系: 说明: 将顶点对应为下标,根据横纵坐标将矩阵中的某一位置值设为1,表示两个顶点相联接。 图示表示的是无向图的邻接矩阵,从中我们可以发现它们的分布关于斜对角线对称。 我们在下面将要...转载 2018-08-27 22:50:58 · 16779 阅读 · 3 评论