亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

C#怎么利用遞歸算法解決漢諾塔問題

c#
小億
102
2024-03-02 19:50:32
欄目: 編程語言

漢諾塔問題是經典的遞歸問題,可以通過遞歸算法來解決。以下是使用C#編寫的漢諾塔問題的遞歸算法示例:

using System;

class MainClass {
    public static void Main (string[] args) {
        int n = 3; // 漢諾塔的盤子數量
        Hanoi(n, 'A', 'B', 'C');
    }

    // 遞歸函數,將n個盤子從A經過B移動到C
    static void Hanoi(int n, char source, char auxiliary, char target) {
        if (n == 1) {
            Console.WriteLine($"移動盤子 {n}{source}{target}");
        } else {
            Hanoi(n - 1, source, target, auxiliary);
            Console.WriteLine($"移動盤子 {n}{source}{target}");
            Hanoi(n - 1, auxiliary, source, target);
        }
    }
}

在上面的示例中,我們定義了一個Hanoi函數,它接受三個參數:盤子數量n,源柱子source,輔助柱子auxiliary和目標柱子target。然后使用遞歸調用來實現漢諾塔問題的解決。

你可以在Main函數中設置漢諾塔的盤子數量n,然后調用Hanoi函數來打印出移動每個盤子的步驟。

0
措美县| 屏东市| 嘉定区| 循化| 文水县| 库伦旗| 丹棱县| 临桂县| 青州市| 同心县| 连城县| 新晃| 抚州市| 亚东县| 富蕴县| 宁海县| 楚雄市| 额济纳旗| 邹城市| 前郭尔| 禄劝| 黑河市| 深圳市| 曲松县| 冷水江市| 合水县| 玉林市| 宜州市| 盱眙县| 瑞昌市| 清徐县| 黔西县| 千阳县| 临澧县| 瓦房店市| 湟中县| 沛县| 措勤县| 宁安市| 武清区| 万宁市|