【数据结构和算法】
文章平均质量分 82
viclee108
即使不能成为巨人,也要始终站在巨人的肩膀上
展开
-
汉诺塔问题解决算法
问题描述:假设有3个分别命名为X,Y,Z的塔座,在塔座X上插有n个直径大小各不相同、依小到大编号为1,2,……n个圆盘。现要求将X轴上的n个圆盘移至塔座Z上并仍按同样顺序叠排,圆盘移动时必须遵守下列规则:(1)每次只能移动一个圆盘;(2)圆盘可以插在X,Y和Z中的任一塔座上;(3)任何时刻都不能将一个较大的圆盘压在较小的圆盘之上。求n个盘至少需移动的次数,并输出移动的步骤。原创 2011-06-10 09:51:00 · 2234 阅读 · 1 评论 -
螺旋队列算法分析
<br /> 螺旋队列的样子如下图:<br /> <br /> <br /> <br /> 两大规律:<br />1。螺旋规律(红线)<br />2。奇数平方规律(紫线)<br /> <br /> <br /> 看清以上数字排列的规律,设 1 点的坐标是 (0,0),x 方向向右为正,y 方向向下为正。例如,7 的坐标为 (-1,-1),2 的坐标为 (0,1),3 的坐标为 (1,1)。编程实现输入任意一点坐标 (x,y),输出所对应的数字。[Finland 某著名通信设备公司转载 2011-04-27 13:14:00 · 1317 阅读 · 0 评论 -
归并排序的实现
归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。 首先考虑下如何将将二个有序数列合并。这个非常简单,只要从比较二个数列的第一个数,谁小就先取谁,取了后就在对应数列中删除这个数。然后再进行比较,如果有转载 2011-09-04 22:40:37 · 4722 阅读 · 1 评论