sortowanie i wyszukiwanie binarne

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Sortowanie i wyszukiwanie binarne

zaj ˛ecia 2.

Bartosz Górski, Tomasz Kulczy ´nski, Bła˙zej Osi ´nski

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Sortowanie

Sortowanie

to porz ˛

adkowanie zbioru danych wzgl ˛edem pewnych

cech charakterystycznych ka˙zdego elementu zbioru

najcz ˛e´sciej zbiorem danych jest tablica,
a elementami liczby

mo˙zemy te˙z jednak mówi´c o sortowaniu kart, na r˛

ece

lub te˙z ˙

zołnierzy

, w szeregu, według wzrostu

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Sortowanie

Sortowanie

to porz ˛

adkowanie zbioru danych wzgl ˛edem pewnych

cech charakterystycznych ka˙zdego elementu zbioru

najcz ˛e´sciej zbiorem danych jest tablica,
a elementami liczby

mo˙zemy te˙z jednak mówi´c o sortowaniu kart, na r˛

ece

lub te˙z ˙

zołnierzy

, w szeregu, według wzrostu

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Sortowanie

Sortowanie

to porz ˛

adkowanie zbioru danych wzgl ˛edem pewnych

cech charakterystycznych ka˙zdego elementu zbioru

najcz ˛e´sciej zbiorem danych jest tablica,
a elementami liczby

mo˙zemy te˙z jednak mówi´c o sortowaniu kart, na r˛

ece

lub te˙z ˙

zołnierzy

, w szeregu, według wzrostu

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Sortowanie

Sortowanie

to porz ˛

adkowanie zbioru danych wzgl ˛edem pewnych

cech charakterystycznych ka˙zdego elementu zbioru

najcz ˛e´sciej zbiorem danych jest tablica,
a elementami liczby

mo˙zemy te˙z jednak mówi´c o sortowaniu kart, na r˛

ece

lub te˙z ˙

zołnierzy

, w szeregu, według wzrostu

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Przykład

dana tablica t

i

0

1

2

3

4

5

6

t[i]

11

6

8

2

15

1

2

wynik: posortowana tablica t

i

0

1

2

3

4

5

6

t[i]

1

2

2

6

8

11

15

Jak to zrobi´c?

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Przykład

dana tablica t

i

0

1

2

3

4

5

6

t[i]

11

6

8

2

15

1

2

wynik: posortowana tablica t

i

0

1

2

3

4

5

6

t[i]

1

2

2

6

8

11

15

Jak to zrobi´c?

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Przykład

dana tablica t

i

0

1

2

3

4

5

6

t[i]

11

6

8

2

15

1

2

wynik: posortowana tablica t

i

0

1

2

3

4

5

6

t[i]

1

2

2

6

8

11

15

Jak to zrobi´c?

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Sortowanie przez wybór

Pomysł

Wybierz najmniejszy element z tablicy i zamie ´n go z
pierwszym elementem. Nast ˛epnie porz ˛

adkuj tablic ˛e bez

pierwszego elementu.

Przykład

i

0

1

2

3

4

5

6

t[i]

1

6

8

2

15

11

2

Nast ˛epnie trzeba b ˛edzie sortowa´c elementy od 1 do 6.

Niezmiennik

Po wykonaniu i kroków, pierwsze i elementów tablicy jest
ju˙z w odpowiedniej kolejno´sci.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Sortowanie przez wybór

Pomysł

Wybierz najmniejszy element z tablicy i zamie ´n go z
pierwszym elementem. Nast ˛epnie porz ˛

adkuj tablic ˛e bez

pierwszego elementu.

Przykład

i

0

1

2

3

4

5

6

t[i]

11

6

8

2

15

1

2

Nast ˛epnie trzeba b ˛edzie sortowa´c elementy od 1 do 6.

Niezmiennik

Po wykonaniu i kroków, pierwsze i elementów tablicy jest
ju˙z w odpowiedniej kolejno´sci.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Sortowanie przez wybór

Pomysł

Wybierz najmniejszy element z tablicy i zamie ´n go z
pierwszym elementem. Nast ˛epnie porz ˛

adkuj tablic ˛e bez

pierwszego elementu.

Przykład

i

0

1

2

3

4

5

6

t[i]

11

6

8

2

15

1

2

Nast ˛epnie trzeba b ˛edzie sortowa´c elementy od 1 do 6.

Niezmiennik

Po wykonaniu i kroków, pierwsze i elementów tablicy jest
ju˙z w odpowiedniej kolejno´sci.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Sortowanie przez wybór

Pomysł

Wybierz najmniejszy element z tablicy i zamie ´n go z
pierwszym elementem. Nast ˛epnie porz ˛

adkuj tablic ˛e bez

pierwszego elementu.

Przykład

i

0

1

2

3

4

5

6

t[i]

1

6

8

2

15

11

2

Nast ˛epnie trzeba b ˛edzie sortowa´c elementy od 1 do 6.

Niezmiennik

Po wykonaniu i kroków, pierwsze i elementów tablicy jest
ju˙z w odpowiedniej kolejno´sci.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Sortowanie przez wybór

Pomysł

Wybierz najmniejszy element z tablicy i zamie ´n go z
pierwszym elementem. Nast ˛epnie porz ˛

adkuj tablic ˛e bez

pierwszego elementu.

Przykład

i

0

1

2

3

4

5

6

t[i]

1

6

8

2

15

11

2

Nast ˛epnie trzeba b ˛edzie sortowa´c elementy od 1 do 6.

Niezmiennik

Po wykonaniu i kroków, pierwsze i elementów tablicy jest
ju˙z w odpowiedniej kolejno´sci.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Sortowanie przez wybór

Pomysł

Wybierz najmniejszy element z tablicy i zamie ´n go z
pierwszym elementem. Nast ˛epnie porz ˛

adkuj tablic ˛e bez

pierwszego elementu.

Przykład

i

0

1

2

3

4

5

6

t[i]

1

6

8

2

15

11

2

Nast ˛epnie trzeba b ˛edzie sortowa´c elementy od 1 do 6.

Niezmiennik

Po wykonaniu i kroków, pierwsze i elementów tablicy jest
ju˙z w odpowiedniej kolejno´sci.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Liczba porówna ´n

Ile porówna ´n wykona algorytm sortuj ˛

ac n-elementow ˛

a

tablic ˛e.

Krok: wybór minimum i umieszczenie go na pocz ˛

atku.

n kroków.

Do wybrania minimum z k liczb potrzeba k 1
porówna ´n.

Całkowita liczba porówna ´n:

(

n 1) + (n 2) + . . . + 1 + 0 =

n · (n 1)

2

=

n

2

2

n
2

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Liczba porówna ´n

Ile porówna ´n wykona algorytm sortuj ˛

ac n-elementow ˛

a

tablic ˛e.

Krok: wybór minimum i umieszczenie go na pocz ˛

atku.

n kroków.

Do wybrania minimum z k liczb potrzeba k 1
porówna ´n.

Całkowita liczba porówna ´n:

(

n 1) + (n 2) + . . . + 1 + 0 =

n · (n 1)

2

=

n

2

2

n
2

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Liczba porówna ´n

Ile porówna ´n wykona algorytm sortuj ˛

ac n-elementow ˛

a

tablic ˛e.

Krok: wybór minimum i umieszczenie go na pocz ˛

atku.

n kroków.

Do wybrania minimum z k liczb potrzeba k 1
porówna ´n.

Całkowita liczba porówna ´n:

(

n 1) + (n 2) + . . . + 1 + 0 =

n · (n 1)

2

=

n

2

2

n
2

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Liczba porówna ´n

Ile porówna ´n wykona algorytm sortuj ˛

ac n-elementow ˛

a

tablic ˛e.

Krok: wybór minimum i umieszczenie go na pocz ˛

atku.

n kroków.

Do wybrania minimum z k liczb potrzeba k 1
porówna ´n.

Całkowita liczba porówna ´n:

(

n 1) + (n 2) + . . . + 1 + 0 =

n · (n 1)

2

=

n

2

2

n
2

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Liczba porówna ´n

Ile porówna ´n wykona algorytm sortuj ˛

ac n-elementow ˛

a

tablic ˛e.

Krok: wybór minimum i umieszczenie go na pocz ˛

atku.

n kroków.

Do wybrania minimum z k liczb potrzeba k 1
porówna ´n.

Całkowita liczba porówna ´n:

(

n 1) + (n 2) + . . . + 1 + 0 =

n · (n 1)

2

=

n

2

2

n
2

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Notacja O

Konieczno´s´c istnienia notacji asymptotycznych.

Definicja notacji O()

Dane dwie funkcje f (n) , g(n).
Mówimy, ˙ze f (n) jest O(g(n)) (zapisujemy f (n) = O(g(n))),
gdy istnieje stała c, taka, ˙ze dla ka˙zdego n zachodzi

f (n) ¬ c · g(n)

.

Np. 3 · n

5

jest O(n

5

)

(np. dla c = 3).

n

2

2

n
2

jest oczywi´scie O(n

2

)

.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Notacja O

Konieczno´s´c istnienia notacji asymptotycznych.

Definicja notacji O()

Dane dwie funkcje f (n) , g(n).
Mówimy, ˙ze f (n) jest O(g(n)) (zapisujemy f (n) = O(g(n))),
gdy istnieje stała c, taka, ˙ze dla ka˙zdego n zachodzi

f (n) ¬ c · g(n)

.

Np. 3 · n

5

jest O(n

5

)

(np. dla c = 3).

n

2

2

n
2

jest oczywi´scie O(n

2

)

.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Notacja O

Konieczno´s´c istnienia notacji asymptotycznych.

Definicja notacji O()

Dane dwie funkcje f (n) , g(n).
Mówimy, ˙ze f (n) jest O(g(n)) (zapisujemy f (n) = O(g(n))),
gdy istnieje stała c, taka, ˙ze dla ka˙zdego n zachodzi

f (n) ¬ c · g(n)

.

Np. 3 · n

5

jest O(n

5

)

(np. dla c = 3).

n

2

2

n
2

jest oczywi´scie O(n

2

)

.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Notacja O

Konieczno´s´c istnienia notacji asymptotycznych.

Definicja notacji O()

Dane dwie funkcje f (n) , g(n).
Mówimy, ˙ze f (n) jest O(g(n)) (zapisujemy f (n) = O(g(n))),
gdy istnieje stała c, taka, ˙ze dla ka˙zdego n zachodzi

f (n) ¬ c · g(n)

.

Np. 3 · n

5

jest O(n

5

)

(np. dla c = 3).

n

2

2

n
2

jest oczywi´scie O(n

2

)

.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Notacja O

Konieczno´s´c istnienia notacji asymptotycznych.

Definicja notacji O()

Dane dwie funkcje f (n) , g(n).
Mówimy, ˙ze f (n) jest O(g(n)) (zapisujemy f (n) = O(g(n))),
gdy istnieje stała c, taka, ˙ze dla ka˙zdego n zachodzi

f (n) ¬ c · g(n)

.

Np. 3 · n

5

jest O(n

5

)

(np. dla c = 3).

n

2

2

n
2

jest oczywi´scie O(n

2

)

.

Mówimy o zło˙zono´sci

kwadratowej

.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Dziel i zwyci ˛e˙zaj

Czy mo˙zna sortowa´c szybciej ni˙z w czasie O(n

2

)

?

Dziel i zwyci ˛e˙zaj

Wa˙zna technika w projektowaniu efektywnych
algorytmów.

Dziel wi ˛ekszy problem na mniejsze i buduj rozwi ˛

azanie

całego problemu z rozwi ˛

aza ´n cz ˛

astkowych.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Dziel i zwyci ˛e˙zaj

Czy mo˙zna sortowa´c szybciej ni˙z w czasie O(n

2

)

?

Dziel i zwyci ˛e˙zaj

Wa˙zna technika w projektowaniu efektywnych
algorytmów.

Dziel wi ˛ekszy problem na mniejsze i buduj rozwi ˛

azanie

całego problemu z rozwi ˛

aza ´n cz ˛

astkowych.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Dziel i zwyci ˛e˙zaj

Czy mo˙zna sortowa´c szybciej ni˙z w czasie O(n

2

)

?

Dziel i zwyci ˛e˙zaj

Wa˙zna technika w projektowaniu efektywnych
algorytmów.

Dziel wi ˛ekszy problem na mniejsze i buduj rozwi ˛

azanie

całego problemu z rozwi ˛

aza ´n cz ˛

astkowych.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Sortowanie przez scalanie

Fakt trywialny: je˙zeli tablica ma jeden element to jest
posortowana.

Je˙zeli tablica jest dłu˙zsza, to podziel j ˛

a na dwie cz ˛e´sci i

posortuj ka˙zd ˛

a z nich...

... a nast ˛epnie scal (zł ˛

acz) posortowane tablice.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Sortowanie przez scalanie

Fakt trywialny: je˙zeli tablica ma jeden element to jest
posortowana.

Je˙zeli tablica jest dłu˙zsza, to podziel j ˛

a na dwie cz ˛e´sci i

posortuj ka˙zd ˛

a z nich...

... a nast ˛epnie scal (zł ˛

acz) posortowane tablice.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Sortowanie przez scalanie

Fakt trywialny: je˙zeli tablica ma jeden element to jest
posortowana.

Je˙zeli tablica jest dłu˙zsza, to podziel j ˛

a na dwie cz ˛e´sci i

posortuj ka˙zd ˛

a z nich...

... a nast ˛epnie scal (zł ˛

acz) posortowane tablice.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Scalanie posortowanych tablic

Dane

i

0

1

2

3

a[i]

1

4

8

11

Dane

i

0

1

2

3

b[i]

2

3

3

9

Wynik

i

0

1

2

3

4

5

6

7

T [i]

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Scalanie posortowanych tablic

Dane

i

0

1

2

3

a[i]

1

4

8

11

Dane

i

0

1

2

3

b[i]

2

3

3

9

Wynik

i

0

1

2

3

4

5

6

7

T [i]

1

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Scalanie posortowanych tablic

Dane

i

0

1

2

3

a[i]

1

4

8

11

Dane

i

0

1

2

3

b[i]

2

3

3

9

Wynik

i

0

1

2

3

4

5

6

7

T [i]

1

2

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Scalanie posortowanych tablic

Dane

i

0

1

2

3

a[i]

1

4

8

11

Dane

i

0

1

2

3

b[i]

2

3

3

9

Wynik

i

0

1

2

3

4

5

6

7

T [i]

1

2

3

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Scalanie posortowanych tablic

Dane

i

0

1

2

3

a[i]

1

4

8

11

Dane

i

0

1

2

3

b[i]

2

3

3

9

Wynik

i

0

1

2

3

4

5

6

7

T [i]

1

2

3

3

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Scalanie posortowanych tablic

Dane

i

0

1

2

3

a[i]

1

4

8

11

Dane

i

0

1

2

3

b[i]

2

3

3

9

Wynik

i

0

1

2

3

4

5

6

7

T [i]

1

2

3

3

4

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Scalanie posortowanych tablic

Dane

i

0

1

2

3

a[i]

1

4

8

11

Dane

i

0

1

2

3

b[i]

2

3

3

9

Wynik

i

0

1

2

3

4

5

6

7

T [i]

1

2

3

3

4

8

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Scalanie posortowanych tablic

Dane

i

0

1

2

3

a[i]

1

4

8

11

Dane

i

0

1

2

3

b[i]

2

3

3

9

Wynik

i

0

1

2

3

4

5

6

7

T [i]

1

2

3

3

4

8

9

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Scalanie posortowanych tablic

Dane

i

0

1

2

3

a[i]

1

4

8

11

Dane

i

0

1

2

3

b[i]

2

3

3

9

Wynik

i

0

1

2

3

4

5

6

7

T [i]

1

2

3

3

4

8

9

11

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Liczba porówna ´n

Scalanie:

liczba porówna ´n ¬ długo´s´c wyniku

Długo´sci sortowanych kawałków:

p
0

8

1

4

4

2

2

2

2

2

3

1

1

1

1

1

1

1

1

Liczba poziomów: dlog ne

Suma długo´s´c wyników na dowolnym poziomie: n

Całkowita liczba porówna ´n: n · dlog ne

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Liczba porówna ´n

Scalanie: liczba porówna ´n ¬ długo´s´c wyniku

Długo´sci sortowanych kawałków:

p
0

8

1

4

4

2

2

2

2

2

3

1

1

1

1

1

1

1

1

Liczba poziomów: dlog ne

Suma długo´s´c wyników na dowolnym poziomie: n

Całkowita liczba porówna ´n: n · dlog ne

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Liczba porówna ´n

Scalanie: liczba porówna ´n ¬ długo´s´c wyniku

Długo´sci sortowanych kawałków:

p
0

8

1

4

4

2

2

2

2

2

3

1

1

1

1

1

1

1

1

Liczba poziomów: dlog ne

Suma długo´s´c wyników na dowolnym poziomie: n

Całkowita liczba porówna ´n: n · dlog ne

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Liczba porówna ´n

Scalanie: liczba porówna ´n ¬ długo´s´c wyniku

Długo´sci sortowanych kawałków:

p
0

8

1

4

4

2

2

2

2

2

3

1

1

1

1

1

1

1

1

Liczba poziomów: dlog ne

Suma długo´s´c wyników na dowolnym poziomie: n

Całkowita liczba porówna ´n: n · dlog ne

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Liczba porówna ´n

Scalanie: liczba porówna ´n ¬ długo´s´c wyniku

Długo´sci sortowanych kawałków:

p
0

8

1

4

4

2

2

2

2

2

3

1

1

1

1

1

1

1

1

Liczba poziomów: dlog ne

Suma długo´s´c wyników na dowolnym poziomie: n

Całkowita liczba porówna ´n: n · dlog ne

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Liczba porówna ´n

Scalanie: liczba porówna ´n ¬ długo´s´c wyniku

Długo´sci sortowanych kawałków:

p
0

8

1

4

4

2

2

2

2

2

3

1

1

1

1

1

1

1

1

Liczba poziomów: dlog ne

Suma długo´s´c wyników na dowolnym poziomie: n

Całkowita liczba porówna ´n: n · dlog ne

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Klasa zło˙zono´sci

Liczba porówna ´n: n · dlog ne

n · dlog ne jest O(n · log n)

Zło˙zono´s´c

liniowo-logarytmiczna

.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Klasa zło˙zono´sci

Liczba porówna ´n: n · dlog ne

n · dlog ne jest O(n · log n)

Zło˙zono´s´c

liniowo-logarytmiczna

.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Klasa zło˙zono´sci

Liczba porówna ´n: n · dlog ne

n · dlog ne jest O(n · log n)

Zło˙zono´s´c

liniowo-logarytmiczna

.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wprowadzenie

Wybrałem liczb ˛e od 1 do 9. Jaka to liczba?

1

2

3

4

5

6

7

8

9

5?

Za mało!

8?

Za du˙zo!

7?

OK!

Tak, to te˙z

dziel i zwyci ˛e˙zaj

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wprowadzenie

Wybrałem liczb ˛e od 1 do 9. Jaka to liczba?

1

2

3

4

5

6

7

8

9

5?

Za mało!

8?

Za du˙zo!

7?

OK!

Tak, to te˙z

dziel i zwyci ˛e˙zaj

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wprowadzenie

Wybrałem liczb ˛e od 1 do 9. Jaka to liczba?

1

2

3

4

5

6

7

8

9

5?

Za mało!

8?

Za du˙zo!

7?

OK!

Tak, to te˙z

dziel i zwyci ˛e˙zaj

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wprowadzenie

Wybrałem liczb ˛e od 1 do 9. Jaka to liczba?

1

2

3

4

5

6

7

8

9

5?

Za mało!

8?

Za du˙zo!

7?

OK!

Tak, to te˙z

dziel i zwyci ˛e˙zaj

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wprowadzenie

Wybrałem liczb ˛e od 1 do 9. Jaka to liczba?

1

2

3

4

5

6

7

8

9

5?

Za mało!

8?

Za du˙zo!

7?

OK!

Tak, to te˙z

dziel i zwyci ˛e˙zaj

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wprowadzenie

Wybrałem liczb ˛e od 1 do 9. Jaka to liczba?

1

2

3

4

5

6

7

8

9

5?

Za mało!

8?

Za du˙zo!

7?

OK!

Tak, to te˙z

dziel i zwyci ˛e˙zaj

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wprowadzenie

Wybrałem liczb ˛e od 1 do 9. Jaka to liczba?

1

2

3

4

5

6

7

8

9

5?

Za mało!

8?

Za du˙zo!

7?

OK!

Tak, to te˙z

dziel i zwyci ˛e˙zaj

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wprowadzenie

Wybrałem liczb ˛e od 1 do 9. Jaka to liczba?

1

2

3

4

5

6

7

8

9

5?

Za mało!

8?

Za du˙zo!

7?

OK!

Tak, to te˙z

dziel i zwyci ˛e˙zaj

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wyszukiwanie elementu w posortowanej tablicy

Dane: posortowana tablica t i liczba c

i

0

1

2

3

4

5

6

7

8

t[i]

1

2

2

6

8

11

15

17

22

Pytanie: Czy liczba c jest w tablicy t?

Rozwi ˛

azanie brutalne:

pesymistycznie n porówna ´n

Jak zrobi´c to szybciej?

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wyszukiwanie elementu w posortowanej tablicy

Dane: posortowana tablica t i liczba c

i

0

1

2

3

4

5

6

7

8

t[i]

1

2

2

6

8

11

15

17

22

Pytanie: Czy liczba c jest w tablicy t?

Rozwi ˛

azanie brutalne:

pesymistycznie n porówna ´n

Jak zrobi´c to szybciej?

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wyszukiwanie elementu w posortowanej tablicy

Dane: posortowana tablica t i liczba c

i

0

1

2

3

4

5

6

7

8

t[i]

1

2

2

6

8

11

15

17

22

Pytanie: Czy liczba c jest w tablicy t?

Rozwi ˛

azanie brutalne:

pesymistycznie n porówna ´n

Jak zrobi´c to szybciej?

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wyszukiwanie elementu w posortowanej tablicy

Dane: posortowana tablica t i liczba c

i

0

1

2

3

4

5

6

7

8

t[i]

1

2

2

6

8

11

15

17

22

Pytanie: Czy liczba c jest w tablicy t?

Rozwi ˛

azanie brutalne:

pesymistycznie n porówna ´n

Jak zrobi´c to szybciej?

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wyszukiwanie binarne posortowanej tablicy

Pytanie: Czy 15 jest w tablicy t?

Wyszukiwanie

i

0

1

2

3

4

5

6

7

8

t[i]

1

2

2

6

8

11

15

17

22

Sprawd´z t[4].

Za mało!

Sprawd´z t[7].

Za du˙zo!

Sprawd´z t[6]

Znalazłem 15!

Déjà vu?

Nie,

wyszukiwanie binarne!

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wyszukiwanie binarne posortowanej tablicy

Pytanie: Czy 15 jest w tablicy t?

Wyszukiwanie

i

0

1

2

3

4

5

6

7

8

t[i]

1

2

2

6

8

11

15

17

22

Sprawd´z t[4].

Za mało!

Sprawd´z t[7].

Za du˙zo!

Sprawd´z t[6]

Znalazłem 15!

Déjà vu?

Nie,

wyszukiwanie binarne!

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wyszukiwanie binarne posortowanej tablicy

Pytanie: Czy 15 jest w tablicy t?

Wyszukiwanie

i

0

1

2

3

4

5

6

7

8

t[i]

1

2

2

6

8

11

15

17

22

Sprawd´z t[4].

Za mało!

Sprawd´z t[7].

Za du˙zo!

Sprawd´z t[6]

Znalazłem 15!

Déjà vu?

Nie,

wyszukiwanie binarne!

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wyszukiwanie binarne posortowanej tablicy

Pytanie: Czy 15 jest w tablicy t?

Wyszukiwanie

i

0

1

2

3

4

5

6

7

8

t[i]

1

2

2

6

8

11

15

17

22

Sprawd´z t[4].

Za mało!

Sprawd´z t[7].

Za du˙zo!

Sprawd´z t[6]

Znalazłem 15!

Déjà vu?

Nie,

wyszukiwanie binarne!

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wyszukiwanie binarne posortowanej tablicy

Pytanie: Czy 15 jest w tablicy t?

Wyszukiwanie

i

0

1

2

3

4

5

6

7

8

t[i]

1

2

2

6

8

11

15

17

22

Sprawd´z t[4].

Za mało!

Sprawd´z t[7].

Za du˙zo!

Sprawd´z t[6]

Znalazłem 15!

Déjà vu?

Nie,

wyszukiwanie binarne!

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wyszukiwanie binarne posortowanej tablicy

Pytanie: Czy 15 jest w tablicy t?

Wyszukiwanie

i

0

1

2

3

4

5

6

7

8

t[i]

1

2

2

6

8

11

15

17

22

Sprawd´z t[4].

Za mało!

Sprawd´z t[7].

Za du˙zo!

Sprawd´z t[6]

Znalazłem 15!

Déjà vu?

Nie,

wyszukiwanie binarne!

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wyszukiwanie binarne posortowanej tablicy

Pytanie: Czy 15 jest w tablicy t?

Wyszukiwanie

i

0

1

2

3

4

5

6

7

8

t[i]

1

2

2

6

8

11

15

17

22

Sprawd´z t[4].

Za mało!

Sprawd´z t[7].

Za du˙zo!

Sprawd´z t[6]

Znalazłem 15!

Déjà vu?

Nie,

wyszukiwanie binarne!

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wyszukiwanie binarne posortowanej tablicy

Pytanie: Czy 15 jest w tablicy t?

Wyszukiwanie

i

0

1

2

3

4

5

6

7

8

t[i]

1

2

2

6

8

11

15

17

22

Sprawd´z t[4].

Za mało!

Sprawd´z t[7].

Za du˙zo!

Sprawd´z t[6]

Znalazłem 15!

Déjà vu?

Nie, wyszukiwanie binarne!

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Wyszukiwanie binarne posortowanej tablicy

Pytanie: Czy 15 jest w tablicy t?

Wyszukiwanie

i

0

1

2

3

4

5

6

7

8

t[i]

1

2

2

6

8

11

15

17

22

Sprawd´z t[4].

Za mało!

Sprawd´z t[7].

Za du˙zo!

Sprawd´z t[6]

Znalazłem 15!

Déjà vu? Nie,

wyszukiwanie binarne!

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Analiza zło˙zono´sci

Po ka˙zdym kroku:

Dwa razy mniejsza tablica do przeszukiwania

Liczba porówna ´n: dlog ne

O(log n)

Zło˙zono´s´c

logarytmiczna

.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Analiza zło˙zono´sci

Po ka˙zdym kroku:
Dwa razy mniejsza tablica do przeszukiwania

Liczba porówna ´n: dlog ne

O(log n)

Zło˙zono´s´c

logarytmiczna

.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Analiza zło˙zono´sci

Po ka˙zdym kroku:
Dwa razy mniejsza tablica do przeszukiwania

Liczba porówna ´n: dlog ne

O(log n)

Zło˙zono´s´c

logarytmiczna

.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Analiza zło˙zono´sci

Po ka˙zdym kroku:
Dwa razy mniejsza tablica do przeszukiwania

Liczba porówna ´n: dlog ne

O(log n)

Zło˙zono´s´c

logarytmiczna

.

background image

Sortowanie i

wyszukiwanie

binarne

Wst ˛ep

Przykład

Sortowanie
przez wybór

Zło˙zono´s´c
obliczeniowa

Sortowanie
przez scalanie

Dziel i zwyci ˛e˙zaj

Scalanie

Analiza zło˙zono´sci

Wyszukiwanie
binarne

Zastosowanie

Analiza zło˙zono´sci

Po ka˙zdym kroku:
Dwa razy mniejsza tablica do przeszukiwania

Liczba porówna ´n: dlog ne

O(log n)

Zło˙zono´s´c

logarytmiczna

.


Document Outline


Wyszukiwarka

Podobne podstrony:
Wyszukiwanie Binarne
Wyszukiwanie binarne
Wyszukiwanie Binarne
algorytmy rózne, Wyszukiwanie liniowe i binarne, Program liniowe;
4 sortowanie
elektryczna implementacja systemu binarnego
Sortowanie cz 2 ppt
10 0 Reprezentacja Binarna
04 Liczby ujemne i ułamki w systemie binarnym
binarne dziesiętne
Drzewa binarne
3 Narzędzia wyszukiwawcze i źródła informacji ppt
Pierwsze miejsce w wyszukiwarkach
19 zapis binarny systemow analogowych
[demo] Vademecum Hakera Edycja plików binarnych
Jak stworzyć prostą wyszukiwarkę dla własnych stron WWW, PHP Skrypty

więcej podobnych podstron