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

溫馨提示×

c#二叉樹中路徑和的計算方法

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

以下是用C#實現二叉樹中路徑和的計算方法:

using System;

public class TreeNode
{
    public int val;
    public TreeNode left;
    public TreeNode right;
    public TreeNode(int value = 0, TreeNode leftChild = null, TreeNode rightChild = null)
    {
        val = value;
        left = leftChild;
        right = rightChild;
    }
}

public class BinaryTree
{
    public int PathSum(TreeNode root, int sum)
    {
        if (root == null)
        {
            return 0;
        }

        return PathSumFrom(root, sum) + PathSum(root.left, sum) + PathSum(root.right, sum);
    }

    private int PathSumFrom(TreeNode node, int sum)
    {
        if (node == null)
        {
            return 0;
        }

        int count = 0;
        if (node.val == sum)
        {
            count++;
        }

        count += PathSumFrom(node.left, sum - node.val);
        count += PathSumFrom(node.right, sum - node.val);

        return count;
    }
}

class Program
{
    static void Main()
    {
        TreeNode root = new TreeNode(10);
        root.left = new TreeNode(5);
        root.right = new TreeNode(-3);
        root.left.left = new TreeNode(3);
        root.left.right = new TreeNode(2);
        root.right.right = new TreeNode(11);
        root.left.left.left = new TreeNode(3);
        root.left.left.right = new TreeNode(-2);
        root.left.right.right = new TreeNode(1);

        BinaryTree tree = new BinaryTree();
        int sum = 8;
        int result = tree.PathSum(root, sum);

        Console.WriteLine("Number of paths with sum " + sum + ": " + result);
    }
}

在上面的代碼中,我們定義了一個TreeNode類來表示二叉樹中的節點,以及一個BinaryTree類來計算二叉樹中路徑和等于給定值的路徑數量。在BinaryTree類中,我們使用遞歸的方法來遍歷二叉樹,并計算路徑和等于給定值的路徑數量。在Main方法中,我們創建了一個二叉樹,并計算路徑和等于8的路徑數量。

0
泸州市| 高陵县| 岑溪市| 新邵县| 安乡县| 亳州市| 庄浪县| 龙陵县| 塔河县| 甘孜县| 新巴尔虎左旗| 清水县| 南雄市| 萨迦县| 冀州市| 湖北省| 申扎县| 神木县| 西青区| 化德县| 双鸭山市| 黎川县| 当阳市| 桑植县| 南昌县| 大关县| 晋江市| 靖江市| 连山| 夹江县| 漳州市| 额尔古纳市| 敦化市| 周宁县| 东乌珠穆沁旗| 乌拉特后旗| 麻阳| 克山县| 龙里县| 大连市| 建阳市|