Recursive and Iterative | Faster than 96% | Easy to understand | Python
Recursive approach\n\ndef recursive(self, root, val):\n        def rec(root):\n            if root:\n                if root.val == val: return root\n          
### Recursive approach\n```\ndef recursive(self, root, val):\n        def rec(root):\n            if root:\n                if root.val == val: return root\n                elif root.val < val: return rec(root.right)\n                return rec(root.left)\n        \n        return rec(root)\n```\n\n### Iterative approach\n```\ndef iterative(self, root, val):\n        temp = root\n        while temp:\n            if temp.val == val: return temp\n            elif temp.val < val: temp = temp.right\n            else: temp = temp.left\n        return None\n```\n\n**I hope that you\'ve found them useful.**\n*In that case, please do upvote. It motivates me to write more such posts*
['Recursion', 'Iterator', 'Python']