BINARY SEARCH TREEE

 // Online C compiler to run C program online

#include <stdio.h>

#include <malloc.h>

int ketemu = 0;

typedef struct element

{

    int data;

    struct element * left;

    struct element * right;

}element;

element * createdtree(int data)

{

    element * buat;

    buat = (element*)malloc(sizeof(element));

    buat-> data = data;

    buat->left = NULL;

    buat-> right = NULL;

}

void insertdata(int data, element **tree)

{

    if((*tree)==NULL)

    {

        (*tree)= createdtree(data);

        

    }else if(data >= (*tree)->data)

    {

        insertdata(data,&(*tree)->right);

    }else

    {

        insertdata(data,&(*tree)->left);

    }

}

    void preorder(element * tree)

    {

        if(tree == NULL) return;

        printf("%d",tree->data);

        preorder(tree->left);

        preorder(tree->right);

        

    }

 void searchdata(element ** tree,int cari)

 {

     if((*tree)->data == cari)

     {

         ketemu = 1;

     }else if((*tree)-> data > cari)

     {

         searchdata(&(*tree)->left,cari);

     }else

     {

         searchdata(&(*tree)->right,cari);

     }

 }

int main()

{

    element * tree= NULL;

    insertdata(10,&tree);

    insertdata(11,&tree);

    insertdata(9,&tree);

    insertdata(100,&tree);

    preorder(tree);

    searchdata(&tree,100);

    if(ketemu == 1)

    {

        printf("ada");

    }else

    {

        printf("g ada");

    }

}

    


Komentar

Postingan populer dari blog ini

Pentingnya Mendapatkan Sertifikasi di Bidang IT/Sebagai Programmer

Pengantar Java Swing Bagian 1

Pengenalan UML