Concise iterative solution (C++)
cpp\nTreeNode* searchBST(TreeNode* root, int val) {\n    while (root != nullptr && root->val != val) {\n      root = (root->val > val) ? root->left : root->righ
``` cpp\nTreeNode* searchBST(TreeNode* root, int val) {\n    while (root != nullptr && root->val != val) {\n      root = (root->val > val) ? root->left : root->right;\n    }\n    return root;\n}\n```
[]