随笔分类 - Algorithm
摘要:在推荐系统众多方法中,基于用户的协同过滤推荐算法是最早诞生的,原理也较为简单。该算法1992年提出并用于邮件过滤系统,一直到2000年,该算法都是推荐系统领域最著名的算法。 本文简单介绍基于用户的协同过滤算法思想以及原理,最后基于该算法实现园友的推荐,即根据你关注的人,为你推荐博客园中其他你有可能感兴趣的人...
阅读全文
摘要:PageRank 通过网页与网页之间的链接关系计算各网页权重,一般权重高的网页特点是:链接向它的网页数量多、链向它的网页其权重也较高。PageRank 就是通过这样的连接关系,一轮轮迭代计算后得出各网页的权重。 思路拓展一下,其实人与人之间也是连接着的,在社会的人际关系网中,每个人的社会地位和身价也...
阅读全文
摘要:一共4个数字,共需要3个运算符,可以构造一个二叉树,没有子节点的节点的为值,有叶子节点的为运算符例如数字{1, 2, 3, 4},其中一种解的二叉树形式如下所示:因此可以遍历所有二叉树可能的形式,4个数的全排列,从4种运算符中挑选3种运算符(运算符可以重复)核心步骤1:需要遍历所有二叉树的可能...
阅读全文
摘要:BEncoding是BitTorrent用在传输数据结构的编码方式,我们最熟悉的“种子”文件,它里面的元数据就是 Bencode 过的字典表。虽然比用纯二进制编码效率低,但由于结构简单而且不受字节存储顺序影响(所有数字以十进制编码,不存在大端小端的问题)——这对于跨平台性非常重要。而且具有较好的灵活性,即使存在故障的字典键,只要将其忽略并更换新的就能...
阅读全文
摘要:在office中输错了单词,office会在单词下方用红色波浪线标出来,你右击它,在菜单中会提示正确的单词拼法;在翻译词典中输入单词时拼错了某个字母,词典会智能的提示你可能想输入的单词。 其实这里用到的是"编辑距离"的概念,根据维基百科的解释,编辑距离,又称Levenshtein距离,是指两个字串之间,由一个转成另一个所需的最少编辑操作次数。许可的编辑操作包括...
阅读全文
摘要:Google 图片搜索功能 在谷歌图片搜索中, 用户可以上传一张图片, 谷歌显示因特网中与此图片相同或者相似的图片. 比如我上传一张照片试试效果:原理讲解 参考Neal Krawetz博士的这篇文章, 实现这种功能的关键技术叫做"感知哈希算法"(Perceptual hash algorithm)...
阅读全文
摘要:问题是这样的: 有一些离散的点, 在坐标系中把它们拟合成一条曲线, 其中有一段看上去很像是直线, 现在要求出这段"直线"的起始坐标和结束坐标, 并把这条线的方程求出来...
阅读全文
摘要:寻路算法不止 A* 这一种, 还有递归, 非递归, 广度优先, 深度优先, 使用堆栈等等, 有兴趣的可以研究研究. 如图所示简易地图, 其中绿色方块的是起点 (用 A 表示), 中间蓝色的是障碍物, 红色的方块(用 B 表示)是目的地. 为了可以用一个二维数组来表示地图, 我们将地图划分成一个个的小方块...
阅读全文
摘要:酋长的女儿艾丽要出嫁了,按以往的风俗习惯,要搭个高台,台下是众多的求婚者,艾丽在台上扔束花,扔在台下谁身上,艾丽就得嫁给谁。但她担心落不到心爱的雷蒙身上。艾丽私下约雷蒙商量如何是好。雷蒙想出了一个主意……艾丽便和父亲说:“我不愿意搭台撒花,这么多人来,挤在一起乱哄哄的,没秩序。”父亲说,“不这样也可以,但结婚时要当场在人群中决定嫁给谁,不许指名,方法你自己定。”艾丽高兴的告诉主持人如何行事。婚日来临,人群拥挤,主持人叫求婚者排成一队,雷蒙在队外数了数队列共有101人,于是自己找了个合适的位置也站在队列中,主持人要大家从前往后1,2,1,2……报数,报单数的退出场外,余下的人位置不变,再重新从前往后1,2,1,2…
阅读全文
摘要:数的因子就是所有可以整除这个数的数,但是不包括这个数自身。比如15的因子是1, 3, 5 。如果一个正整数如果正好等于它的所有因子之和,这个数就称为“完数”。例如,6的因子为1, 2, 3, 而6=1+2+3,因此6是“完数”。请输出1000以内这样的完数...
阅读全文
摘要:给你若干钱, 有1元, 5元, 10元, 25元, 50元这5种小钱可以换. 求共有多少种方法...
阅读全文