Exemplo n.º 1
0
        private Urun delete(Urun root, String urunAdi)
        {
            if (root == null)
            {
                return(null);
            }
            //int cmp = urunAdi.compareTo(root.getUrunAdi());
            int cmp = string.Compare(urunAdi, root.getUrunAdi());

            if (cmp < 0)
            {
                root.setLeft(delete(root.getLeft(), urunAdi));
            }
            else if (cmp > 0)
            {
                root.setRight(delete(root.getRight(), urunAdi));
            }
            else
            {
                if (root.getRight() == null)
                {
                    return(root.getLeft());
                }
                if (root.getLeft() == null)
                {
                    return(root.getRight());
                }
                Urun t = root;
                root = min(root.getRight());
                root.setRight(deleteMin(t.getRight()));
                root.setLeft(t.getLeft());
            }
            root.setN(size(root.getLeft()) + size(root.getRight()) + 1);
            return(root);
        }
Exemplo n.º 2
0
        private Urun get(Urun x, String urunAdi)
        {
            if (x == null)
            {
                return(null);
            }
            //int cmp = urunAdi.compareTo(x.getUrunAdi());
            int cmp = String.Compare(urunAdi, x.getUrunAdi());

            if (cmp < 0)
            {
                return(get(x.getLeft(), urunAdi));
            }
            else if (cmp > 0)
            {
                return(get(x.getRight(), urunAdi));
            }
            else
            {
                return(x);
            }
        }
Exemplo n.º 3
0
        private Urun put(Urun root, Urun eklenecekUrun)
        {
            if (root == null)
            {
                return(eklenecekUrun);
            }
            //int cmp = eklenecekUrun.getUrunAdi().compareTo(root.getUrunAdi());
            int cmp = string.Compare(eklenecekUrun.getUrunAdi(), root.getUrunAdi());

            if (cmp < 0)
            {
                root.setLeft(put(root.getLeft(), eklenecekUrun));
            }
            else if (cmp > 0)
            {
                root.setRight(put(root.getRight(), eklenecekUrun));
            }
            else
            {
                root = eklenecekUrun;
            }
            root.setN(1 + size(root.getLeft()) + size(root.getRight()));
            return(root);
        }