久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

怎么用java遞歸查詢樹形結構

145次閱讀
沒有評論

共計 1075 個字符,預計需要花費 3 分鐘才能閱讀完成。

要使用 Java 遞歸查詢樹形結構,首先需要定義樹的節(jié)點類,包含節(jié)點的值和子節(jié)點列表。然后,編寫遞歸查詢的方法。

以下是一個示例代碼:

class TreeNode {int value;
    List<TreeNode> children;

    public TreeNode(int value) {this.value = value;
        this.children = new ArrayList<>();}
}

class Tree {
    TreeNode root;

    public Tree(TreeNode root) {this.root = root;
    }

    // 遞歸查詢樹中是否包含指定值的節(jié)點
    public boolean containsValue(TreeNode node, int value) {if (node.value == value) {return true;
        }
        
        for (TreeNode child : node.children) {if (containsValue(child, value)) {return true;
            }
        }
        
        return false;
    }
}

public class Main {public static void main(String[] args) {TreeNode node1 = new TreeNode(1);
        TreeNode node2 = new TreeNode(2);
        TreeNode node3 = new TreeNode(3);
        TreeNode node4 = new TreeNode(4);
        TreeNode node5 = new TreeNode(5);
        
        node1.children.add(node2);
        node1.children.add(node3);
        node2.children.add(node4);
        node3.children.add(node5);
        
        Tree tree = new Tree(node1);
        
        System.out.println(tree.containsValue(tree.root, 3)); // 輸出:true
        System.out.println(tree.containsValue(tree.root, 6)); // 輸出:false
    }
}

在上面的示例中,首先定義了一個 TreeNode 類,表示樹的節(jié)點。Tree類表示整個樹結構,并包含了一個遞歸查詢方法containsValue,用于在樹中查找是否包含指定值的節(jié)點。

main 方法中,創(chuàng)建了一個包含多個節(jié)點的樹,并進行了查詢操作。輸出結果為 true 表示樹中包含指定值的節(jié)點,輸出結果為 false 表示樹中不包含指定值的節(jié)點。

丸趣 TV 網 – 提供最優(yōu)質的資源集合!

正文完
 
丸趣
版權聲明:本站原創(chuàng)文章,由 丸趣 2023-12-13發(fā)表,共計1075字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發(fā)布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 德化县| 广东省| 鹤庆县| 西安市| 安溪县| 休宁县| 鄄城县| 普陀区| 漾濞| 青海省| 沙坪坝区| 余江县| 朝阳区| 云梦县| 嘉祥县| 衡水市| 纳雍县| 太仆寺旗| 水富县| 库伦旗| 夏邑县| 屏东市| 屯昌县| 同心县| 高青县| 罗甸县| 台东市| 留坝县| 永靖县| 杨浦区| 玛沁县| 两当县| 黄梅县| 定兴县| 左权县| 吉木乃县| 岗巴县| 浦北县| 长海县| 会东县| 繁昌县|