中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

C# treenode怎樣實現搜索

c#
小樊
87
2024-07-16 15:58:56
欄目: 編程語言

要在C#中實現對TreeNode的搜索,可以使用遞歸算法來實現。以下是一個示例代碼,展示了如何在一個簡單的二叉樹中搜索特定的值:

using System;

public class TreeNode
{
    public int value;
    public TreeNode left;
    public TreeNode right;

    public TreeNode(int v)
    {
        value = v;
        left = null;
        right = null;
    }
}

public class Tree
{
    public TreeNode root;

    public Tree()
    {
        root = null;
    }

    public TreeNode Search(TreeNode node, int target)
    {
        if (node == null || node.value == target)
        {
            return node;
        }

        TreeNode leftResult = Search(node.left, target);
        TreeNode rightResult = Search(node.right, target);

        if (leftResult != null)
        {
            return leftResult;
        }
        else
        {
            return rightResult;
        }
    }
}

class Program
{
    static void Main()
    {
        Tree tree = new Tree();
        tree.root = new TreeNode(1);
        tree.root.left = new TreeNode(2);
        tree.root.right = new TreeNode(3);
        tree.root.left.left = new TreeNode(4);
        tree.root.left.right = new TreeNode(5);
        tree.root.right.left = new TreeNode(6);
        tree.root.right.right = new TreeNode(7);

        TreeNode result = tree.Search(tree.root, 5);

        if (result != null)
        {
            Console.WriteLine("Found value: " + result.value);
        }
        else
        {
            Console.WriteLine("Value not found");
        }
    }
}

在上面的示例中,我們定義了一個簡單的二叉樹結構,并實現了一個Search方法來搜索特定的值。在Main方法中,我們創建了一個樹實例,并調用Search方法來搜索值為5的節點。如果找到了對應的節點,將會打印出節點的值;否則,將會打印出“Value not found”。

0
广安市| 伊宁县| 潢川县| 文昌市| 富顺县| 东兴市| 尚志市| 黄陵县| 凤凰县| 齐齐哈尔市| 资讯| 资阳市| 西盟| 濮阳县| 江华| 盐山县| 三门县| 浦北县| 简阳市| 班玛县| 和田县| 鞍山市| 文成县| 稻城县| 青州市| 兰考县| 廉江市| 安徽省| 昔阳县| 安西县| 武城县| 长岛县| 太保市| 三亚市| 江陵县| 广平县| 玉林市| 南涧| 宜章县| 兴隆县| 枝江市|