#include "drzewo.h"


Drzewo::Drzewo()
{
	korzen = NULL;
//	cout << "Jestem konstruktorem klasy Drzewo" << endl;
}

void Drzewo::Dodaj(string slowo)
{
	korzen = Dodaj(korzen,slowo);

}

void Drzewo::Wyswietl()
{
	Wyswietl(korzen);
}

Wezel *Drzewo::Dodaj(Wezel *k,string slowo)
{
	if(!k)
	{
		Wezel *w = new Wezel(slowo); 
		return w;
	}

	if(k->slowo == slowo)
	{
		k->ile++;
		return k;	
	}

	if(k->slowo > slowo) k->lewo=Dodaj(k->lewo,slowo);
	else k->prawo=Dodaj(k->prawo,slowo);

	return k;
}

void Drzewo::Wyswietl(Wezel *k)
{
	if(!k) return ;
	Wyswietl(k->lewo);
	k->Wyswietl();
	Wyswietl(k->prawo);
}

Drzewo::~Drzewo()
{
	Zwolnij(korzen);
	korzen=NULL;
}

void Drzewo::Zwolnij(Wezel *k)
{
	if(!k) return ;
	Zwolnij(k->lewo);
	Zwolnij(k->prawo);
	delete k;
}
