private static bs_WezelDrzewa <BT, TV> bs_utworz_wezel(BT bs_dane) { bs_WezelDrzewa <BT, TV> bs_wezel = new bs_WezelDrzewa <BT, TV>(); bs_wezel.bs_Dane = bs_dane; return(bs_wezel); }
private bs_WezelDrzewa <BT, TV> bs_znajdz(BT key, bool Ex = true) { bs_WezelDrzewa <BT, TV> bierz = bs_korzen_drzewa; while (bierz != null) { int compare = bierz.bs_Dane.CompareTo(key); if (compare == 0) { return(bierz); } else if (compare < 0) { bierz = bierz.bs_Prawa_Galaz; } else { bierz = bierz.bs_Lewa_Galaz; } } if (Ex == true) { throw new KeyNotFoundException(); } else { return(null); } }
public bs_DrzewoBinarne(BT bs_wartosc_korzenia) { if (typeof(BT).Equals(typeof(Int32))) { bs_korzen_drzewa = bs_utworz_wezel(bs_wartosc_korzenia); } }
public string bs_Insert(BT bs_wartosc) { string bs_czy_dodano = ""; bs_WezelDrzewa <BT, TV> bs_wezel = new bs_WezelDrzewa <BT, TV>(bs_wartosc); bs_czy_dodano = bs_Insert(bs_wezel); return(bs_czy_dodano); }
private string bs_wypisz_drzewo_postfix(bs_WezelDrzewa <BT, TV> bs_wezel) { string bs_wynik = ""; if ((bs_wezel != null)) { bs_licznik_postfix++; bs_wynik += bs_wypisz_drzewo_postfix(bs_wezel.bs_Lewa_Galaz); bs_wynik += bs_wypisz_drzewo_postfix(bs_wezel.bs_Prawa_Galaz); bs_wynik += Convert.ToString(bs_wezel.bs_Dane); } for (int bs_i = 0; bs_i <= 10; bs_i++) { bs_lista_postfix.Add(bs_licznik_postfix); } return(bs_wynik); }
private void bs_Insert(bs_WezelDrzewa <BT, TV> bs_wezel, ref bs_WezelDrzewa <BT, TV> bs_rodzic) { if (bs_rodzic == null) { bs_rodzic = bs_wezel; } else { if (bs_wezel.bs_Dane.CompareTo(bs_rodzic.bs_Dane) < 0) { bs_Insert(bs_wezel, ref bs_rodzic.bs_Lewa_Galaz); } else if (bs_wezel.bs_Dane.CompareTo(bs_rodzic.bs_Dane) > 0) { bs_Insert(bs_wezel, ref bs_rodzic.bs_Prawa_Galaz); } } }
public string bs_Insert(bs_WezelDrzewa <BT, TV> bs_wezel) { string bs_czy_dodano = ""; if (bs_wezel == null) { bs_licznik_insert_dodanie_jednego_elementu++; bs_czy_dodano = "Nie dodano elementu"; } else if (bs_korzen_drzewa == null) { bs_licznik_insert_dodanie_jednego_elementu++; bs_korzen_drzewa = bs_wezel; bs_czy_dodano = "Korzen byl pusty.Dodano jeden element"; } else { bs_licznik_insert_dodanie_jednego_elementu++; bs_Insert(bs_wezel, ref bs_korzen_drzewa); bs_czy_dodano = "Korzen nie byl pusty. Dodano element"; } return(bs_czy_dodano); }
public void insert(BT bs_dane) { bs_WezelDrzewa <BT, TV> bs_bierzacy = bs_korzen_drzewa; bs_WezelDrzewa <BT, TV> bs_nastepny = bs_korzen_drzewa; while (!(bs_bierzacy == null)) { bs_licznik_insert++; bs_lista_licznika_insert.Add(bs_licznik_insert); bs_nastepny = bs_bierzacy; bs_porownanie = bs_bierzacy.bs_Dane.CompareTo(bs_dane); bs_bierzacy = bs_porownanie < 0 ? bs_bierzacy.bs_Prawa_Galaz : bs_bierzacy.bs_Lewa_Galaz; } if (bs_porownanie == 0) { bs_licznik_insert++; bs_lista_licznika_insert.Add(bs_licznik_insert); bs_duplikat = "Wystapil duplikat, ktory nie bedzie dodany"; } else if (bs_porownanie < 0) { bs_licznik_insert++; bs_lista_licznika_insert.Add(bs_licznik_insert); bs_nastepny.bs_Prawa_Galaz = bs_utworz_wezel(bs_dane); } else { bs_licznik_insert++; bs_lista_licznika_insert.Add(bs_licznik_insert); bs_nastepny.bs_Lewa_Galaz = bs_utworz_wezel(bs_dane); } }
public bs_WezelDrzewa <BT, TV> FindMin(bs_WezelDrzewa <BT, TV> bs_wezel) { return(FindMin(bs_korzen_drzewa)); }
public bs_DrzewoBinarne() { bs_korzen_drzewa = null; }