#include <stdio.h>
#include <stdlib.h>
typedef struct TreeNode {
int data;
struct TreeNode* left;
struct TreeNode* right;
} TreeNode;
TreeNode* createNode(int data) {
TreeNode* newNode = (TreeNode*)malloc(sizeof(TreeNode));
newNode->data = data;
newNode->left = NULL;
newNode->right = NULL;
return newNode;
}
TreeNode* search(TreeNode* node, int target) {
if (node == NULL) {
return NULL;
} else if (node->data == target) {
return node;
} else if (target < node->data) {
return search(node->left, target);
} else {
return search(node->right, target);
}
}
int main() {
TreeNode* root = createNode(13);
TreeNode* node7 = createNode(7);
TreeNode* node15 = createNode(15);
TreeNode* node3 = createNode(3);
TreeNode* node8 = createNode(8);
TreeNode* node14 = createNode(14);
TreeNode* node19 = createNode(19);
TreeNode* node18 = createNode(18);
root->left = node7;
root->right = node15;
node7->left = node3;
node7->right = node8;