四盘汉诺塔的与或图
来源:互联网 发布:spss clementine mac 编辑:程序博客网 时间:2024/05/16 10:38
汉诺塔问题是学编程语言常接触到的一个递归的问题,其实对于递归,除了二叉树的遍历我常使用之外,其他的时候真的是很少想到递归。不过这种思想还是蛮有用的。复习《人工智能》的与或图部分时,看到了三盘Hanoi的与或图,是这样的:
用一个三元组来表示三个盘子所在的柱子,从做到右依次为cba,完成这个工作需要三部:首先将ab都放到2上,把c放到3上,再把ab从2上挪到3上。其中,ab从1挪到2上又得分几部完成:把a放到3上,把b从1放到2上,再把a从3上挪到2上。而把ab从2挪到3上又要分三部完成。这样,把任务分成小任务,而这些小任务可以很容易的完成,小任务完成了就意味着大任务也完成了。
现在的问题是画出4盘Hanoi的与或图,同样,可以先把abc三个盘挪到2上,把d挪到3上,再把abc从2上挪到3上。把abc从1挪到2上就变为3盘hanoi塔的问题了,把abc从2挪到3也是。那我就用四元组画出这个与或图了。
画这个图还是蛮累的,而且还得一边画一边念念有词的,呵呵,欢迎大家挑错啊!
- 四盘汉诺塔的与或图
- 与、或、异或的操作
- 神奇的与(&)、非(~)、或(|)、异或(^)
- 或与异或的本质区别
- grep的或,与匹配
- grep的"与"和"或"
- Python的与或逻辑
- 位运算的与、或
- &&短路与,&与,||短路或,|或的区别
- 人工智能——与或图的搜索
- C语言的按位与、或、非、异或
- C语言的按位与、或、非、异或
- c语言 异或的与或非表示
- C 中 & | ~ ^ 与 或 反 异或 的用法
- 逻辑或与按位或的区别
- 异或、异或和 的性质与应用
- 按位与,或,异或的运算法则
- C语言的按位与、或、非、异或
- 单循环链表
- ProgressDialog自定义方法
- msysgit hooks using lua
- 杂文:这两年来
- 程序员要走的路
- 四盘汉诺塔的与或图
- 获取通讯录所有字段
- Windows Socket 编程, WIN32_LEAN_AND_MEAN 的用法
- Java 基础一些代码练习笔记(LinkedList)
- iphone-common-codes-ccteam源代码 CCMapAnnotation.m
- 2011, 一个实习生的自白
- iphone-common-codes-ccteam源代码 CCMemory.h
- iphone-common-codes-ccteam源代码 CCMemory.m
- iphone-common-codes-ccteam源代码 CCNSArray.h