91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

c#二叉樹的深度優先搜索實現

c#
小樊
81
2024-07-26 02:41:15
欄目: 編程語言

在C#中,可以使用遞歸的方式實現二叉樹的深度優先搜索。以下是一個示例代碼:

using System;

public class Node
{
    public int data;
    public Node left, right;

    public Node(int item)
    {
        data = item;
        left = right = null;
    }
}

public class BinaryTree
{
    Node root;

    public BinaryTree()
    {
        root = null;
    }

    private void DepthFirstSearch(Node node)
    {
        if (node == null)
            return;

        Console.Write(node.data + " ");

        DepthFirstSearch(node.left);

        DepthFirstSearch(node.right);
    }

    public void DepthFirstSearch()
    {
        DepthFirstSearch(root);
    }

    public static void Main()
    {
        BinaryTree tree = new BinaryTree();

        tree.root = new Node(1);
        tree.root.left = new Node(2);
        tree.root.right = new Node(3);
        tree.root.left.left = new Node(4);
        tree.root.left.right = new Node(5);

        Console.WriteLine("Depth First Search of binary tree is: ");
        tree.DepthFirstSearch();
    }
}

在上面的示例中,首先定義了一個Node類來表示二叉樹的節點,然后定義了一個BinaryTree類來表示二叉樹。DepthFirstSearch方法用于遞歸地進行深度優先搜索,先訪問當前節點,然后分別遞歸訪問左子樹和右子樹。在Main方法中,創建一個二叉樹并調用DepthFirstSearch方法進行深度優先搜索。

0
开封市| 长白| 老河口市| 且末县| 普兰县| 威远县| 万年县| 浪卡子县| 海南省| 平度市| 桦甸市| 云梦县| 永和县| 西充县| 华亭县| 三穗县| 巴中市| 五台县| 敦煌市| 玉环县| 红安县| 屏边| 登封市| 万州区| 柯坪县| 青浦区| 榆中县| 普格县| 叶城县| 同仁县| 柯坪县| 抚宁县| 扎鲁特旗| 仁布县| 彭山县| 阿拉尔市| 梁河县| 黄冈市| 邢台县| 当雄县| 荆门市|