private void btnOgrenciSil_Click(object sender, EventArgs e)
        {
            if (txtOgrenciSil.Text == "")
            {
                MessageBox.Show("Ogrenci Numarasi Giriniz");
                return;
            }
            bstNode yeniBstNode = new bstNode();
            int     ogrenciNo   = Convert.ToInt16(txtOgrenciSil.Text);

            if (ogrenciler.getElement(ogrenciNo) != null)
            {
                ogrenciler.DeletePos(ogrenciNo);
                BinarySearchTree Ogrenciler = new BinarySearchTree(ogrenciler.sortedListToBST());
                GlobalTree = Ogrenciler;
                ogrencilerSortedByNotOrtalamasi.Head = ogrenciler.Head;
                ogrencilerSortedByNotOrtalamasi.Size = ogrenciler.Size;
                if (ogrenciler.Head != null)
                {
                    ogrencilerSortedByNotOrtalamasi.bubbleSort(ogrencilerSortedByNotOrtalamasi.Head);
                }
            }
            else
            {
                MessageBox.Show("Güncellemek istediğiniz Öğrenci Bulunmamaktadır Lütfen Ogrenci Numarasını Tekrar Giriniz!");
                return;
            }
        }
        private void btnGuncelle_Click(object sender, EventArgs e)
        {
            Ogrenci ogr         = new Ogrenci();
            Node    yeniNode    = new Node();
            bstNode yeniBstNode = new bstNode();

            if (txtAd.Text == "" || txtAdres.Text == "" || txtBolumAd.Text == "" || txtkayitSirketAd.Text == "" || txtOkulAdi.Text == "" ||
                txtStajTarihi.Text == "" || txtTelNo.Text == "" || txtUyruk.Text == "" || txtYabanciDil.Text == "" || txtbaslangicTarihi.Text == "" ||
                txtBitisTarihi.Text == "" || txtDogumTarih.Text == "" || txtePosta.Text == "" || txtIlgiAlanlari.Text == "")
            {
                MessageBox.Show("Alanların Hepsini Doldurunuz Lütfen !!!!");
                return;
            }
            ogr.Ad                         = txtAd.Text;
            ogr.Adres                      = txtAdres.Text;
            ogr.dogumTarihiYil             = Convert.ToInt32(txtDogumTarih.Text);
            ogr.ePosta                     = txtePosta.Text;
            ogr.ilgiAlani                  = txtIlgiAlanlari.Text;
            ogr.ogrenciNo                  = Convert.ToInt32(txtOgrenciNo.Text);
            ogr.telNo                      = Convert.ToInt32(txtTelNo.Text);
            ogr.Uyruk                      = txtUyruk.Text;
            ogr.yabanciDil                 = txtYabanciDil.Text;
            ogr.mezunbilgi.basariBelgeli   = chckBasariBelgesi.Checked;
            ogr.mezunbilgi.baslangicTarihi = txtbaslangicTarihi.Text;
            ogr.mezunbilgi.bitisTarihi     = txtBitisTarihi.Text;
            ogr.mezunbilgi.bolumAd         = txtBolumAd.Text;
            ogr.mezunbilgi.notOrtalamasi   = Convert.ToInt16(txtNotOrtalamasi.Text);
            ogr.mezunbilgi.okulAd          = txtOkulAdi.Text;
            ogr.staj.deparOrGorev          = txtDepartmanOrGorev.Text;
            ogr.staj.sirketAd              = txtkayitSirketAd.Text;
            ogr.staj.stajTarihi            = txtStajTarihi.Text;
            if (ogr.mezunbilgi.basariBelgeli == true && ogr.mezunbilgi.notOrtalamasi != 100)
            {
                ogr.mezunbilgi.notOrtalamasi += 10;
            }
            yeniNode.Data = ogr;
            if (ogrenciler.getElement(ogr.ogrenciNo) != null)
            {
                if (((Ogrenci)(ogrenciler.getElement(ogr.ogrenciNo)).Data).ogrenciNo == ((Ogrenci)yeniNode.Data).ogrenciNo)
                {
                    ogrenciler.Guncelle(ogr.ogrenciNo, ogr);
                    MessageBox.Show("Güncelle Gerçekleşmiştir.");
                }
                else
                {
                    MessageBox.Show("Güncellemek istediğiniz Öğrenci Bulunmamaktadır Lütfen Ogrenci Numarasını Tekrar Giriniz!");
                    return;
                }
            }


            BinarySearchTree Ogrenciler = new BinarySearchTree(ogrenciler.sortedListToBST());

            GlobalTree = Ogrenciler;
            ogrencilerSortedByNotOrtalamasi.Head = ogrenciler.Head;
            ogrencilerSortedByNotOrtalamasi.Size = ogrenciler.Size;
            ogrencilerSortedByNotOrtalamasi.bubbleSort(ogrencilerSortedByNotOrtalamasi.Head);
        }
        private void btnKaydet_Click(object sender, EventArgs e)
        {
            Ogrenci ogr         = new Ogrenci();
            Node    yeniNode    = new Node();
            bstNode yeniBstNode = new bstNode();

            if (txtAd.Text == "" || txtAdres.Text == "" || txtBolumAd.Text == "" || txtkayitSirketAd.Text == "" || txtOkulAdi.Text == "" ||
                txtStajTarihi.Text == "" || txtTelNo.Text == "" || txtUyruk.Text == "" || txtYabanciDil.Text == "" || txtbaslangicTarihi.Text == "" ||
                txtBitisTarihi.Text == "" || txtDogumTarih.Text == "" || txtePosta.Text == "" || txtIlgiAlanlari.Text == "")
            {
                MessageBox.Show("Alanların Hepsini Doldurunuz Lütfen !!!!");
                return;
            }
            ogr.Ad                         = txtAd.Text;
            ogr.Adres                      = txtAdres.Text;
            ogr.dogumTarihiYil             = Convert.ToInt32(txtDogumTarih.Text);
            ogr.ePosta                     = txtePosta.Text;
            ogr.ilgiAlani                  = txtIlgiAlanlari.Text;
            ogr.ogrenciNo                  = Convert.ToInt32(txtOgrenciNo.Text);
            ogr.telNo                      = Convert.ToInt32(txtTelNo.Text);
            ogr.Uyruk                      = txtUyruk.Text;
            ogr.yabanciDil                 = txtYabanciDil.Text;
            ogr.mezunbilgi.basariBelgeli   = chckBasariBelgesi.Checked;
            ogr.mezunbilgi.baslangicTarihi = txtbaslangicTarihi.Text;
            ogr.mezunbilgi.bitisTarihi     = txtBitisTarihi.Text;
            ogr.mezunbilgi.bolumAd         = txtBolumAd.Text;
            ogr.mezunbilgi.notOrtalamasi   = Convert.ToInt16(txtNotOrtalamasi.Text);
            ogr.mezunbilgi.okulAd          = txtOkulAdi.Text;
            ogr.staj.deparOrGorev          = txtDepartmanOrGorev.Text;
            ogr.staj.sirketAd              = txtkayitSirketAd.Text;
            ogr.staj.stajTarihi            = txtStajTarihi.Text;
            if (ogr.mezunbilgi.basariBelgeli == true)//basarı belgeli olma durumu
            {
                ogr.mezunbilgi.notOrtalamasi += 10;
            }
            yeniNode.Data = ogr;
            if (ogrenciler.Head != null)
            {
                if ((ogrenciler.getElement(ogr.ogrenciNo)) != null)
                {
                    if (((Ogrenci)(ogrenciler.getElement(ogr.ogrenciNo).Data)).ogrenciNo == ((Ogrenci)yeniNode.Data).ogrenciNo)
                    {
                        MessageBox.Show("Eklemek istediğiniz Oğrenci zaten var Güncelleme yapmak için Güncelle butonuna basınız.");
                        return;
                    }
                }
            }

            ogrenciler.sortedInsert(yeniNode);
            BinarySearchTree Ogrenciler = new BinarySearchTree(ogrenciler.sortedListToBST());

            GlobalTree = Ogrenciler;
            ogrencilerSortedByNotOrtalamasi.Head = ogrenciler.Head;
            ogrencilerSortedByNotOrtalamasi.Size = ogrenciler.Size;
            ogrencilerSortedByNotOrtalamasi.bubbleSort(ogrencilerSortedByNotOrtalamasi.Head);
        }
Example #4
0
    private bstNode sortedListToBSTRecur(int n, bool ilk = true)
    {
        if (ilk)
        {
            temp = Head;
        }
        if (n <= 0)
        {
            return(null);
        }
        bstNode left = sortedListToBSTRecur(n / 2, false);
        bstNode root = new bstNode((Ogrenci)(temp.Data));

        root.sol = left;
        temp     = temp.Next;
        root.sag = sortedListToBSTRecur(n - n / 2 - 1, false);
        return(root);
    }