Posts

Showing posts with the label pohon biner

metode kompresi data huffman ( huffman compression method ) C++

#include <iostream.h> #include <conio.h> #include <string> struct digits { char chrs;    int freq;    }nodex[50]; int itungfreq (char* pstrBuf, char chAscii) { int iCount = 0; int iLength = strlen (pstrBuf); for (int i=0; i<iLength; i++) { if (pstrBuf [i] == chAscii) { iCount++; } } return iCount; } void encode(int jumlahdatapreorder, int jumlahdatainorder) {    int jumdt;    string kanan;    jumdt=jumlahdatainorder;    int jumdtx=jumdt-2;    string *bin = new string[jumlahdatainorder];    string *binx = new string[jumlahdatainorder]; for(int i=0;i<jumdtx;i++)    {       kanan=kanan+"1";       bin[(jumdtx-1)-i]=kanan;    } for(int i=0;i<jumlahdatainorder;i++)    {     if(i==0)       {       binx[i]=bin[i]+"0";     ...

Pencarian pada pohon biner ( Binary search tree ) using C++

#include <stdio.h> #include <conio.h> #include <malloc.h> struct data{ int angka; struct data *left, *right; }*root = NULL; void menu(void){ gotoxy(1,23); printf("tekan '+' utk menyisipkan data baru"); gotoxy(40,23); printf("tekan '-' utk mencari & menghapus"); gotoxy(1,24); printf("tekan 'Esc' utk keluar"); } void insert (struct data **p, int angka, int level){ level += 1; if( level < 6){ if( (*p) == NULL ){ (*p) = (struct data *) malloc (sizeof (struct data) ); (*p) -> angka = angka; (*p) -> left = (*p) -> right = NULL; } else if( angka < (*p)-> angka ){ //insert(& (*p) -> left, angka, level); } else if( angka > (*p)-> angka ){ //insert(& (*p) -> right, angka, level); } } else{ textcolor(14); gotoxy(1,32); cprintf("Level Tree telah mencapai Maksimum"); textcolor(7); getch(); } } ...