[C#] wyszukiwanie binarne

Hania_87
Użytkownik
Użytkownik
Posty: 860
Rejestracja: 18 cze 2007, o 20:57
Płeć: Kobieta
Lokalizacja: Rybnik
Podziękował: 86 razy
Pomógł: 57 razy

[C#] wyszukiwanie binarne

Post autor: Hania_87 »

wskazuje ze element ktorego nie ma wystepuje na jakims tam miejscu w tablicy

Kod: Zaznacz cały

class Program // wyszukiwanie binarne
    {
        static void Main(string[] args)
        {
            int[] tab = { 1, 3, 5, 2, 9, 11, 18, 32, 54, 23,8 };
            int s, prawy=tab.Length , lewy=0, srodek = (prawy + lewy) / 2;
            for (int i = 0; i < tab.Length; i++)
                Console.Write("{0}  ", tab[i]);
            Console.WriteLine("
podaj szukaną liczbę");
            s=Convert.ToInt32(Console.ReadLine());
            while (lewy < prawy)
            {
                if (s == tab[srodek])
                    break;
                else
                    if (s < tab[srodek])
                    {
                        prawy = srodek - 1;
                        srodek = (prawy + lewy) / 2;
                    }
                    else
                    {
                        lewy = srodek + 1;
                        srodek = (prawy + lewy) / 2;
                    }
            }
            if (lewy <= prawy)
                Console.WriteLine("podany element jest w tablicy na miejscu {0}", srodek + 1);
            else
                Console.WriteLine("podanego elementu nie ma w tablicy");
            Console.ReadKey();
        }
    }
Awatar użytkownika
argv
Użytkownik
Użytkownik
Posty: 569
Rejestracja: 27 maja 2009, o 01:27
Płeć: Mężczyzna
Podziękował: 51 razy
Pomógł: 66 razy

[C#] wyszukiwanie binarne

Post autor: argv »

Nie czytam kodu czy dobrze napisane, ale żeby móc zastosować wyszukiwanie binarne musisz mieć posortowaną tablicę A Twoja nie jest
Hania_87
Użytkownik
Użytkownik
Posty: 860
Rejestracja: 18 cze 2007, o 20:57
Płeć: Kobieta
Lokalizacja: Rybnik
Podziękował: 86 razy
Pomógł: 57 razy

[C#] wyszukiwanie binarne

Post autor: Hania_87 »

przy sortowaniu tablicy sie nie trzeba meczyc z sortowaniem przez wstawienie ani
selekcje, tylko mozna wpisac Array.Sort(nazwa tablicy); i powinno starczyc
ODPOWIEDZ