Bin Tree Implementation
unknown
c_cpp
2 years ago
1.2 kB
4
Indexable
// // Created by Luka on 5.10.2023.. // #include <stdio.h> #include <stdlib.h> struct Node { int val; struct Node* left; struct Node* right; }; struct Node* newNode(int val) { struct Node* newNode = (struct Node*) malloc(sizeof(struct Node)); newNode->val = val; newNode->left = NULL; newNode->right = NULL; return newNode; } void insertNode(struct Node* currNode, int val) { if (val <= currNode->val) { if (currNode->left != NULL) { insertNode(currNode->left, val); } else { currNode->left = newNode(val); } } else { if (currNode->right != NULL) { insertNode(currNode->right, val); } else { currNode->right = newNode(val); } } } void traverse(struct Node* currNode) { if (currNode == NULL) return; traverse(currNode->left); printf("%d\n", currNode->val); traverse(currNode->right); } int main() { struct Node *root = newNode(0); insertNode(root, 3); insertNode(root, 1); insertNode(root, -10); insertNode(root, -5); traverse(root); return 0; }
Editor is loading...