摘要: 42.Algorithm Gossip: 循序搜寻法(使用卫兵)说明搜寻的目的,是在「已排序的资料」中寻找指定的资料,而当中循序搜寻是最基本的搜寻法,只要从资料开头寻找到最后,看看是否找到资料即可。解法初学者看到循序搜寻,多数都会使用以下的方式来进行搜寻:while(i #include #in... 阅读全文
posted @ 2012-11-13 08:29 Mr.Rico 阅读(381) 评论(0) 推荐(0)
摘要: 24.Algorithm Gossip: 洗扑克牌(乱数排列)说明洗扑克牌的原理其实与乱数排列是相同的,都是将一组数字(例如1~N)打乱重新排列,只不过洗扑克牌多了一个花色判断的动作而已。解法初学者通常会直接想到,随机产生1~N的乱数并将之存入阵列中,后来产生的乱数存入阵列前必须先检查阵列中是否已有... 阅读全文
posted @ 2012-11-13 08:29 Mr.Rico 阅读(448) 评论(0) 推荐(0)
摘要: 34.Algorithm Gossip: Shell 排序法 - 改良的插入排序说明插入排序法由未排序的后半部前端取出一个值,插入已排序前半部的适当位置,概念简单但速度不快。排序要加快的基本原则之一,是让后一次的排序进行时,尽量利用前一次排序后的结果,以加快排序的速度,Shell排序法即是基于此一概... 阅读全文
posted @ 2012-11-13 08:29 Mr.Rico 阅读(395) 评论(0) 推荐(0)
摘要: 14.Algorithm Gossip: 蒙地卡罗法求 PI说明蒙地卡罗为摩洛哥王国之首都,该国位于法国与义大利国境,以赌博闻名。蒙地卡罗的基本原理为以乱数配合面积公式来进行解题,这种以机率来解题的方式带有赌博的意味,虽然在精确度上有所疑虑,但其解题的思考方向却是个值得学习的方式。解法蒙地卡罗的解法... 阅读全文
posted @ 2012-11-13 08:28 Mr.Rico 阅读(1094) 评论(0) 推荐(0)
摘要: 4.Algorithm Gossip: 三色棋说明三色旗的问题最早由E.W.Dijkstra所提出,他所使用的用语为Dutch Nation Flag(Dijkstra为荷兰人),而多数的作者则使用Three-Color Flag来称之。假设有一条绳子,上面有红、白、蓝三种颜色的旗子,起初绳子上的旗... 阅读全文
posted @ 2012-11-13 08:28 Mr.Rico 阅读(782) 评论(0) 推荐(0)
摘要: 27.Algorithm Gossip: 排列组合说明将一组数字、字母或符号进行排列,以得到不同的组合顺序,例如1 2 3这三个数的排列组合有:1 2 3、1 3 2、2 1 3、2 3 1、3 1 2、3 2 1。解法可以使用递回将问题切割为较小的单元进行排列组合,例如1 2 3 4的排列可以分为... 阅读全文
posted @ 2012-11-13 08:27 Mr.Rico 阅读(2278) 评论(0) 推荐(0)
摘要: 49.Algorithm Gossip: 奇数魔方阵说明将1到n(为奇数)的数字排列在nxn的方阵上,且各行、各列与各对角线的和必须相同,如下所示:解法填魔术方阵的方法以奇数最为简单,第一个数字放在第一行第一列的正中央,然后向右(左)上填,如果右(左)上已有数字,则向下填,如下图所示:一般程序语言的... 阅读全文
posted @ 2012-11-13 08:27 Mr.Rico 阅读(5217) 评论(2) 推荐(0)
摘要: 1. 传统的字符串匹配算法传统匹配思想是,从目标串Target的第一个字符开始扫描,逐一与模式串的对应字符进行匹配,若该组字符匹配,则检测下一组字符,如遇失配,则退回到Target的第二个字符,重复上述步骤,直到整个Pattern在Target中找到匹配,或者已经扫描完整个目标串也没能够完成匹配为止... 阅读全文
posted @ 2012-11-13 08:26 Mr.Rico 阅读(716) 评论(0) 推荐(0)