统计热门文章的算法

临近下班的时候,突然想到统计热门文章的问题。以前我所知道的热门文章统计,基本有这么几种:

  • 按点击数排序 该方法最大的问题在于热门的文章会越来越热门,最终失去热门文章的意义。
  • 按点击和时间排序 即找出某时间段内,点击数靠前的文章。这种方法的问题是好的文章可能会太早地下去,而某些并不好的文章却因为某时间段文章少而成为热门。

这些都不是我们所期望的。
Read more »

国王与囚犯(腾迅笔试题)

国王招来100个囚犯,对他们说:你们犯的是死罪,但我给你们一次求生的机会。15分钟以后,你们将被关进一个有100间隔离牢房的监狱里,每人一间牢房,都与外界隔绝,什么也听不见看不到,连时间都没法计算,无法获得外界的任何信息。
这所监狱有一个院子,每天随机(注意是完全随机)打开一间牢房的门,让一个囚犯到院子里来放风。院子里有一盏灯,放风的囚犯可以控制它的开关,将它打开或是关闭。除囚犯之外,其他人都不会去碰开关。这盏灯会永远有充足的能源供应,灯泡和电路不会出故障。
除了开关这盏灯,放风的囚犯放风时留下的任何其它痕迹都会在夜晚被清除干净(包括在灯上作的任何记号)。牢房是完全封闭的,院子里的灯光在牢房里看不到。只有放风到院子里的人才能看到。
Read more »

javascript中的空间换时间算法

在我做的淘宝的在线招聘题第三题中,我使用的就是空间换时间的算法。什么是空间换时间算法?算法的复杂度包括时间复杂度和空间复杂度。很多时候,对时间复杂度的要求要远比对空间复杂度的要求高,于是就有了牺牲空间来获得时间的算法——空间换时间算法。
Read more »

开开淘宝的玩笑

淘宝这次在招聘上下了大功夫,专门制作了一个招聘站点,还在蓝色上投了广告,可见其重视程度。可设计师,程序员们还是一如既往的调侃淘宝,不信?请看招聘答卷趣味精选
本来觉得去捣乱挺内疚的,一看原来和我一样不应聘只答题的人还不少,我的歉意之情荡然无存,哈哈。大家也一起去捣乱吧,还能给你的blog增加一个ip,我好坏啊,哇哈哈!
Read more »

A*算法类

以前写过一篇关于a*算法的文章,由于搬家现在无法访问了。当时也尝试用flash实现,无奈电脑在那时也当机了。似乎是硬盘的原因,一直无法使用了。因为对这个的需求也不是很强烈,所以暂时就搁置了。

又一次偶然的机会,在国外的一个网站上看到了这个算法的实现,于是下载下来,稍加整理,贡献给大家。
Read more »