1、递归 汉诺塔是由三根杆子A,B,C组成的。A杆上有N个(N>1)穿孔圆盘,盘的尺寸由下到上依次变小。要求按下列规则将所有圆盘移至C杆:每次只能移动一个圆盘;大盘不能叠在小盘上面。提示:可将圆盘临时置于B杆,也可将从A杆移出的圆盘重新移回A杆,但都必须尊循上述两条规则。问:如何移? 有一对刚出生的 ...
分类:
编程语言 时间:
2016-09-09 18:21:56
阅读次数:
198
#include <iostream> using namespace std; void hanno(char a,char b,char c,int s){ if(s==1) { cout<<a<<" "<<c<<endl; return; } else{ hanno(a,c,b,s-1); c ...
分类:
其他好文 时间:
2016-09-09 15:00:45
阅读次数:
124
作为一个编程初学者,写下这些东西主要是为了加深自己的理解,当然如果能对各位有所帮助,是本人的荣幸。如有错误之处敬请指出。 问题描述: 有一个梵塔,塔内有三个座A、B、C,A座上有诺干个盘子,盘子大小不等,大的在下,小的在上(如图)。 把这些个盘子从A座移到C座,中间可以借用B座但每次只能允许移动一个 ...
分类:
其他好文 时间:
2016-09-03 22:30:32
阅读次数:
180
public class HinoTest { public static int step=0; /** * * @param num 盘子数 * @param a 柱子 * @param b 柱子 * @param c 柱子 */ public static void hinoMove(int ...
分类:
编程语言 时间:
2016-09-01 22:42:41
阅读次数:
129
汉诺塔比较经典的实现是利用递归,但也可以利用堆栈。 题意理解:有A,B,C三个柱子,将A柱子上的N个盘子(从大到小排列)移到C柱子上,每次只允许移动一个盘子,并且保证每个柱子上的盘子的排列都是从大到小。 1、递归实现 假设只有一个盘子,那么只需实现 A->C 这个动作; 如果有两个盘子,那么需要 ( ...
分类:
其他好文 时间:
2016-08-25 14:29:59
阅读次数:
186
using System;using System.Collections.Generic;using System.Linq;using System.Text; namespace MyExample_Hanoi_{ class Program { static void Main(string ...
1、扫描/etc/passwd文件每一行,如发现GECOS字段为空,则填充用户名和单位电话为62985600,并提示该用户的GECOS信息修改成功。#!/bin/bash
whilereadline;do
ifecho"$line"|cut-d:-f5|grep"^$"&>/dev/null;then
name=`echo"$line"|cut-d:-f1`
chfn-f$name$name&>..
分类:
其他好文 时间:
2016-08-21 01:03:31
阅读次数:
308