//Jeigu reiksme egzistuoja hierarchineje strukturoje grazinama lygi, jei ne grazinamas 0 public virtual int RastiLygiKaiReiksmeEgzistuoja(Susikirtimas susikirtimas, int reiksme, int lygis) { if (susikirtimas == null) { return(0); } if (susikirtimas.reiksme == reiksme) { return(lygis); } int kitasLygis = RastiLygiKaiReiksmeEgzistuoja(susikirtimas.kaire, reiksme, lygis + 1); if (kitasLygis != 0) { return(kitasLygis); } kitasLygis = RastiLygiKaiReiksmeEgzistuoja(susikirtimas.desine, reiksme, lygis + 1); return(kitasLygis); }
//Grazina reiksmes lygi public virtual int RastiLygi(Susikirtimas node, int reiksme) { return(RastiLygiKaiReiksmeEgzistuoja(node, reiksme, 1)); }
public Susikirtimas(int d) { reiksme = d; kaire = desine = null; }