HasPathsum 2 पैरामीटर लेता है एक ट्री नोड है और दूसरा योग मान है, शुरू में हम जांचते हैं कि नोड शून्य है या नहीं, यदि नोड शून्य है तो हम झूठी वापसी करते हैं। यदि नोड शून्य नहीं है तो हम HasPathSum पुनरावर्ती विधि कहते हैं, प्रत्येक पुनरावर्ती चरण में हम नोड मान से योग मान घटाते रहते हैं। यदि योग का मान 0 तक पहुँच जाता है, तो हम इस निष्कर्ष पर पहुँचते हैं कि दिए गए पेड़ का पथ योग के बराबर है और सही लौटता है।
उदाहरण
public class TreesPgm{ public class Node{ public int Value; public Node LeftChild; public Node RightChild; public Node(int value){ this.Value = value; } public override String ToString(){ return "Node=" + Value; } } public bool HasPathSum(Node node, int sum){ if (root == null){ return false; } return helperHasPathSum(node, sum); } private bool helperHasPathSum(Node root, int sum){ if (root == null){ return false; } sum -= root.Value; if (root.LeftChild == null && root.RightChild == null && sum == 0){ return true; } return helperHasPathSum(root.LeftChild, sum) || helperHasPathSum(root.RightChild, sum); } }
इनपुट
5 2 6 1 3 7
आउटपुट
True