Witajcie Szanowni Programiści.
Zaczynam pracę na c# i mam do oddania na zaliczenie program, który ma opisywac wszystkie operacje na drzewie AVL. Dosyc opornie idzie mi pochłanianie nowej wiedzy. Wzorowałem się na programie kolegi napisanym w C++, ale konwersja nie jest taka prosta. Największy problem mam ze skończeniem procedur inorder i postorder oraz z usuwaniem elementów z programu.
Żeby tutaj nie zaśmieca za bardzo podaję link do pełnego kodu:
http://wklej.org/id/1264138/
Najtrudniejsze dla mnie problemy:
public void inorder(AVLNode x)
{
if (x != null)
{
GlobalMembersAvl.inorder(x.left); //////////
Console.Write(x.key);
Console.Write("\n");
GlobalMembersAvl.inorder(x.right); ////////
}
}
public void postorder(AVLNode x)
{
if (x != null)
{
GlobalMembersAvl.postorder(x.left); //----------------
GlobalMembersAvl.postorder(x.right);//---------
Console.Write(x.key);
Console.Write("\n");
}
}
public void Dispose()
{
while (root != null)
{
Remove(Remove(root));//////////////////
}
}
Jeśli wybrałem zły dział proszę przenieś do "Newbie"
Z góry dzięki za uwagę!
EDIT: Niewiele do sukcesu brakuje. Mam jeszcze problem z określeniem odpowiednim destruktora:
http://wklej.org/id/1264569/