zoukankan      html  css  js  c++  java
  • 汉诺塔问题C#

    using System;
    using System.Collections.Generic;

    namespace Hanoi
    {
        
    class Program
        {
            
    public static int count;
            
    static void Main(string[] args)
            {
                Stack
    <int> a = new Stack<int>();
                a.Push(
    7); a.Push(4); a.Push(2);
                Stack
    <int> b = new Stack<int>();
                Stack
    <int> c = new Stack<int>();

                
    foreach (int tmp in a)
                {
                    Console.WriteLine(tmp.ToString());
                }

                HanoiFun(
    3, a, b, c);

                
    foreach (int tmp2 in c)
                {
                    Console.WriteLine(tmp2.ToString());
                }

                Console.WriteLine(count.ToString());
                Console.Read();
            }

            
    public static void HanoiFun(int n, Stack<int> a, Stack<int> b, Stack<int> c)
            {
                
    if (n == 1)
                {
                    Move(a, c);
                    
    ++count;
                }
                
    else
                {
                    
    ++count;
                    HanoiFun(n 
    - 1, a, c, b);
                    Move(a, c);
                    HanoiFun(n 
    - 1, b, a, c);
                }
            }

            
    public static void Move(Stack<int> a, Stack<int> b)
            {
                
    if (a.Count <= 0)
                {
                    
    return;
                }

                
    int temp = a.Pop();
                b.Push(temp);
            }
        }
    }
  • 相关阅读:
    ios专题 - OCUnit
    ios专题 - APP设计流程
    ios专题 - openSSL
    iOS开发获取缓存文件的大小并清除缓存
    支付宝“订单交易失败 ALI64” 报错的原因
    先登录 在跳转到tabBar
    首页 导航栏隐藏 下一级页面显示,pop回来遇到的问题
    invalid nib registered for identifier (重用符)
    iOS开发集成微信支付
    NSdata 与 NSString,Byte数组,UIImage 的相互转换
  • 原文地址:https://www.cnblogs.com/coolkiss/p/1518269.html
Copyright © 2011-2022 走看看