算法
童真的烂漫
这个作者很懒,什么都没留下…
展开
-
轻松搞定面试中的二叉树题目
http://blog.csdn.net/luckyxiaoqiang/article/details/7518888 树是一种比较重要的数据结构,尤其是二叉树。二叉树是一种特殊的树,在二叉树中每个节点最多有两个子节点,一般称为左子节点和右子节点(或左孩子和右孩子),并且二叉树的子树有左右之分,其次序不能任意颠倒。二叉树是递归定义的,因此,与二叉树有关的题目基本都可以用递归思想解决,当然转载 2015-06-18 10:16:30 · 449 阅读 · 0 评论 -
漫谈递归思想
http://www.cnblogs.com/BLoodMaster/archive/2010/03/23/1692641.html 编程里面估计最让人摸不着头脑的基本算法就是递归了。很多时候我们看明白一个复杂的递归都有点费时间,尤其对模型所描述的问题概念不清的时候,想要自己设计一个递归那么就更是有难度了。今天我也花费了半个小时来搞明白二叉树的平衡性的递归模型,首先我不明白什么叫做平衡性转载 2015-06-18 10:13:44 · 397 阅读 · 0 评论 -
二维码的生成细节和原理
http://developer.51cto.com/art/201310/414082_all.htm 二维码又称QR Code,QR全称Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的Bar Code条形码能存更多的信息,也能表示更多的数据类型:比如:字符,数字,日文,中文等等。这两天学习了一下二维码图片生成的相关细节,觉得这个玩意就是一个密码算转载 2015-06-26 17:17:56 · 371 阅读 · 0 评论 -
泊松分布和指数分布:10分钟教程
http://www.ruanyifeng.com/blog/2015/06/poisson-distribution.html 一、泊松分布 日常生活中,大量事件是有固定频率的。 某医院平均每小时出生3个婴儿 某公司平均每10分钟接到1个电话 某超市平均每天销售4包xx牌奶粉 某网站平均每分钟有2次访问 它们的特点就是,我们可以预估这些事件的总数转载 2015-06-11 08:51:48 · 2304 阅读 · 1 评论 -
十大算法
算法一:快速排序算法快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见。事实上,快速排序通常明显比其他Ο(n log n) 算法更快,因为它的内部循环(inner loop)可以在大部分的架构上很有效率地被实现出来。 快速排序使用分治法(Divide and conquer)策略来把一个串转载 2015-12-15 18:18:08 · 392 阅读 · 0 评论 -
学习时间复杂度和空间复杂度
评判算法的标准 时效高和存储低 「时效」是指时间效率,也就是算法的执行时间 「存储」是指算法在执行的时候需要的存储空间 时间复杂度(一般是最坏情况下的时间复杂度) 根据数量级,描述时间复杂度,一般用「大 O」表示,记做 O(f(n)),n为数据的规模 常见数量级函数 当 n 增大时,数量级函数增长幅度排名 O(1) < O(logn) < O(n) < O(nlogn...转载 2018-10-18 11:58:22 · 298 阅读 · 0 评论 -
用Python实现所有排序算法
https://www.itcodemonkey.com/article/10491.html 原文 GitHub月度Trending榜单已经出炉,感兴趣的伙伴可点击查看上榜前十的开源项目:《9月份GitHub上最热门的开源项目》 本月榜单有一个项目成功吸引了我的注意,该项目用Python实现了所有的排序算法,包括插入排序、冒泡排序、快速排序、选择排序、归并排序等。 截...转载 2018-10-18 15:05:07 · 271 阅读 · 0 评论