Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public void Usun(String s)
- {
- Wyraz doUsuniecia = Szukaj(s);
- if (doUsuniecia == null) return;
- if (doUsuniecia.prawy == null && doUsuniecia.lewy == null)
- {
- if (doUsuniecia.ojciec == null) korzen = null;
- else if (doUsuniecia.ojciec.lewy == doUsuniecia)
- {
- doUsuniecia.ojciec.lewy = null;
- }
- else doUsuniecia.ojciec.prawy = null;
- doUsuniecia.ojciec = null;
- }
- else
- {
- Wyraz aktualny; //nastepnik lub poprzednik
- if(doUsuniecia.prawy!=null)
- {
- aktualny = doUsuniecia.prawy;
- while(aktualny.lewy!= null)
- {
- aktualny = aktualny.lewy;
- }
- }
- else
- {
- aktualny = doUsuniecia.lewy;
- while (aktualny.prawy != null)
- {
- aktualny = aktualny.prawy;
- }
- }
- if(doUsuniecia.ojciec == null)
- {
- aktualny.ojciec = null;
- if (doUsuniecia.prawy != aktualny && doUsuniecia.prawy != null)
- {
- aktualny.prawy = doUsuniecia.prawy;
- doUsuniecia.prawy.ojciec = aktualny;
- }
- if (doUsuniecia.lewy != aktualny && doUsuniecia.lewy != null)
- {
- aktualny.lewy = doUsuniecia.lewy;
- doUsuniecia.lewy.ojciec = aktualny;
- }
- korzen = aktualny;
- }
- else
- {
- aktualny.ojciec = doUsuniecia.ojciec;
- if (doUsuniecia.prawy != aktualny && doUsuniecia.prawy != null) aktualny.prawy = doUsuniecia.prawy;
- if (doUsuniecia.lewy != aktualny && doUsuniecia.lewy != null) aktualny.lewy = doUsuniecia.lewy;
- if (doUsuniecia.ojciec.lewy == doUsuniecia) doUsuniecia.ojciec.lewy = aktualny;
- else doUsuniecia.ojciec.prawy = aktualny;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement