ACM
文章平均质量分 80
lonelycatcher
爱谷歌,爱豆瓣,爱python
展开
-
poj 1077 八数码难题
终于自己AC了这道八数码难题,用的方法是最最普通的单项BFS+Hash,这里主要的难点在于如何保存状态,其实,在八数码里所有的状态共有9!种=362880种,所以在每个转台节点,我需要一个char state[3][3]来记录当前棋盘的状态,用一个int x,y来记录当前x的位置,用char operation来记录从父状态到这个状态需要进行的操作,当然,为了记录路径,我需要记录它的父节点,然而这原创 2012-01-06 22:26:22 · 1320 阅读 · 0 评论 -
康托展开
转自http://blog.csdn.net/zhongkeli/article/details/6966805 康托展开的公式是 X=an*(n-1)!+an-1*(n-2)!+...+ai*(i-1)!+...+a2*1!+a1*0! 其中,ai为当前未出现的元素中是排在第几个(从0开始)。 这个公式可能看着让人头大,最好举个例子来说明一下。例如,有一个数组 s = ["A", "B"转载 2012-01-07 23:45:30 · 1628 阅读 · 0 评论 -
动态规划详解I
本文章转载自http://yzfy.org/dis/listpost.php?tid=780,作者 macaroniz 动态规划详解 第一章 首先让我们看一个例子: 例1:如下图有一个数字三角阵,请编一个程序计算从顶点至底的某处的一条路径,使该路径所经过的数字的和最大。每一步可沿左斜线向下或右斜线向下走。 7转载 2012-07-28 15:01:36 · 672 阅读 · 0 评论 -
动态规划详解II
本文章转载自http://yzfy.org/dis/listpost.php?tid=780,作者 macaroniz 动态规划详解 第二章 通过上一章的学习,相信大家对动态规划已经有了一个初步的了解,如果您将上一章的推荐习题全部掌握,那么您可以开始这一章的学习内容了。 这一章,我们将讲解一些动态规划的设计技巧。 相信大家在做动态规划一类题目的时候,往往不容易看出来这道题目是动态转载 2012-07-28 15:03:16 · 601 阅读 · 0 评论 -
动态规划详解III
本文章转载自http://yzfy.org/dis/listpost.php?tid=780,作者 macaroniz 动态规划详解 第三章 这一章,我们来学习树形动态规划。 动态规划一般来说分为四大类:线性动态规划,区间动态规划,树形动态规划和特殊种类动态规划。 因为线性模型和区间类模型紧密相关,所以一般我们将这两种类型放在一起学习。 树形动态规划和以上两种不同,它是在一转载 2012-07-28 15:04:15 · 681 阅读 · 0 评论 -
三种线性排序算法 计数排序、桶排序与基数排序
转自:http://www.byvoid.com/blog/sort-radix/ [非基于比较的排序] 在计算机科学中,排序是一门基础的算法技术,许多算法都要以此作为基础,不同的排序算法有着不同的时间开销和空间开销。排序算法有非常多种,如我们最常用的快速排序和堆排序等算法,这些算法需要对序列中的数据进行比较,因为被称为基于比较的排序。 基于比较的排序算法是不能突破O(NlogN)的。简转载 2012-09-03 17:07:49 · 604 阅读 · 0 评论