// Užrašykite dvejetainės paieškos rikiuotame masyve metodą.
        public int DvejetainėPaieška(Krepsininkas naujas)
        {
            int start = 0;
            int end   = n - 1;
            int mid;

            while (start <= end)
            {
                mid = (start + end) / 2;
                if (komanda[mid] == naujas)
                {
                    return(mid);
                }
                else
                {
                    if (komanda[mid] <= naujas)
                    {
                        start = mid + 1;
                    }
                    else
                    {
                        end = mid - 1;
                    }
                }
            }

            return(-1);
        }
 // Užrašykite vieno konteinerio žaidėjų įterpimo į kitą, rikiuotą konteinerį metodą.
 static void IterptiVienaIKita(Komanda senas, Komanda naujas)
 {
     for (int i = 0; i < naujas.ImtiN(); i++)
     {
         Krepsininkas temp = naujas.ImtiKrepsininka(i);
         int          ind  = senas.RastiVieta(temp);
         senas.Įterpti(ind, temp);
     }
 }
 // Užrašykite naujo žaidėjo įterpimo į rikiuotą konteinerį metodą.
 // Konteineryje žaidėjai rikiuoti taškų mažėjimo ir vardų alfabetine tvarka.
 public void Įterpti(int k, Krepsininkas naujas)
 {
     for (int i = n; i > k; i--)
     {
         komanda[i] = komanda[i - 1];
     }
     komanda[k] = naujas;
     n++;
 }
        public int RastiVieta(Krepsininkas naujas)
        {
            int ind = 0;

            while (ind < n && komanda[ind] <= naujas)
            {
                ind++;
            }

            return(ind);
        }
예제 #5
0
        // Užrašykite naujo žaidėjo įterpimo į rikiuotą konteinerį metodą.
        // Konteineryje žaidėjai rikiuoti taškų mažėjimo ir vardų alfabetine tvarka.

        public void Iterpti(Krepsininkas k)
        {
            int j = n - 1;

            while (j >= 0 && k <= komanda[j])
            {
                komanda[j + 1] = komanda[j];
                j--;
            }
            komanda[j + 1] = k;
            n++;
        }
 public void Išmesti(Komanda senas, Komanda naujas)
 {
     for (int i = 0; i < naujas.ImtiN(); i++)
     {
         Krepsininkas temp  = naujas.ImtiKrepsininka(i);
         int          index = senas.DvejetainėPaieška(temp);
         if (index != -1)
         {
             for (int j = index; j < n - 1; j++)
             {
                 senas.Deti(j, senas.ImtiKrepsininka(j + 1));
             }
             senas.setN();
         }
         else
         {
             Console.WriteLine("Žaidėjas, kurio numeris naujame konteineryje {0}, nerastas", i + 1);
         }
     }
 }
        // Užrašykite konteinerio rikiavimo taškų mažėjimo ir vardų alfabetine tvarka metodą.
        public void Rikiuoti()
        {
            int min;

            for (int i = 0; i < n - 1; i++)
            {
                min = i;
                for (int j = i + 1; j < n; j++)
                {
                    if (komanda[j] <= komanda[min])
                    {
                        min = j;
                    }
                }

                Krepsininkas temp = komanda[i];
                komanda[i]   = komanda[min];
                komanda[min] = temp;
            }
        }
예제 #8
0
 static void Print(string fv, Komanda komanda, string tekstas)
 {
     using (var writer = File.AppendText(fv))
     {
         if (komanda.ImtiN() != 0)
         {
             writer.WriteLine();
             writer.WriteLine("       " + tekstas);
             writer.WriteLine();
             writer.WriteLine("|            Vardas Pavardė    |    Metai    |    Ūgis     |    Taškai     |");
             for (int i = 0; i < komanda.ImtiN(); i++)
             {
                 Krepsininkas k = komanda.ImtiKrepsininka(i);
                 writer.WriteLine("|{0, 29} |{1, 12} |{2, 12} |{3, 14} |", k.ImtiVarda(), k.ImtiMetus(), k.ImtiUgi(), k.ImtiTaskus());
             }
         }
         else
         {
             writer.WriteLine("Konteineryje nėra elementų");
         }
     }
 }
예제 #9
0
 public void DetiKrepsininka(Krepsininkas krepsininkas)
 {
     komanda[n] = krepsininkas;
     n++;
 }
예제 #10
0
        // Užrašykite konteinerio Naujas žaidėjų išmetimo iš kito, rikiuoto konteinerio, metodą.
        // Panaudokite susikurtą dvejetainės paieškos metodą.

        public void Deti(int ind, Krepsininkas naujas)
        {
            komanda[ind] = naujas;
        }