Ана Савић

    

Светлана Штрбац

-

Савић

 

Амела Зековић

 

 
 
 
 
 
 
 

Д И С К Р Е Т Н А

 

М А Т Е М А Т И К А

 

И

 

А Л Г О Р И Т М И

 

 
 
 
 
 
 
 

друго

 

издање

 

 
 

 
 
 
 
 
 
 
 

Висока школа електротехнике и рачунарства

 

струковних студија

 

 

Београд, 2012

Аутори:

 

Др Ана Савић

мр Светлана Штрбац

Савић, дипл. инж. Амела Зековић

 

 

Дискретна математика

 

и алгоритми

 

 

Рецензенти

Др Слободан Обрадовић

доцент,

 

Факултет за рачунарске науке

 

у 

Београду

 

Мр Зоран Мишковић, предавач

Висока школа

 

електротехнике и 

рачунарства

 

струковних студија

 

у Београду

 

 

Издавач

Висока школа

 

електротехнике и рачунарства

 

струковних студија

 

Београд, Војводе Степе 283

 

 

Техничка обрада

Др Ана Савић, дипл. инж. Амела Зековић

 

 

Корице

Струк. инж. Ненад Толић

 

 

Слике

Струк. инж. Мирко Ступар

 

 

Тираж:

 15 

 

Штампа:

 

МСТ Гајић

 

 

Наставно  веће  Високе

 

школе

 

електротехнике  и  рачунарства

 

струковних студија у Београду одобрило је коришћење овог уџбеника

 

у 

настави.

 

Забрањено прештампавање и копирање. Сва права задржава издавач.

 

background image

 

 

 

 
 
 

П Р Е Д Г О В О Р

 

 
 
 
 
 

Овај уџбеник написан је

 

за студенте прве године Високе школе 

електротехнике 

и 

рачунарства 

у 

Београду 

који 

слушају 

једносеместрални  курс  из  предмета  Дискретна  математика  и 
алгоритми

Прилагођен  је  плану  и  програму  предмета  Дискретна 

математика и алгоритми

 

и подељен је у 

15 

поглавља.

 

Планирано је да 

се свако поглавље обради  у току  једне радне  недеље. Свако поглавље 
садржи  циљеве  учења,  теоријски  део,  употпуњен  примерима  као  и 
питања  и  задатке  за  проверу  знања  на  крају  сваког  поглавља,  што  је 
стандард у савременој литератури.

 

 

Аутори  позивају  све  читаоце  и  кориснике  да  дају  своје 

сугестије, да би наредна издања била још квалитетнија и садржајнија.

 

 
 
 
 
 
 

У Београду

,   

 

 

 

 

 

Аутори

 

17. 03. 2012. 

 
 
 
 

background image

Садржај

 

 

Увод

 

Језик математике

 

1.

 

Основни појмови математичке логике

 

1.1.

 

Логика

 

1.2.

 

Математичка логика

 

1.2.1.

 

Искази

 

1.3.

 

Основне логичке операције

 

1.4.

 

Приоритет логичких операција

 

12 

1.5.

 

Превод језичких реченица

 

12 

1.6.

 

T

аутологије и логички закони 

 

13 

2.

 

Примена математичке логике у рачунарству и техници

 

19 

2.1.

 

Дигитална и логичка кола

 

20 

3.

 

Основни појмови теорије скупова

 

29 

3.1.

 

Појам скупа

 

29 

3.2.

 

Операције са скуповима

 

31 

3.3.

 

Број елемената скупа

 - 

кардинални број

 

35 

3.4.

 

Раселов парадокс

 

37 

4.

 

Релације

 

43 

5.

 

Функције

 

48 

5.1.

 

Начини задавања функција

 

50 

5.2.

 

Реалне функције једне променљиве

  

51 

5.3.

 

Инверзна функција

 

51 

5.4.

 

Слагање функција

 

52 

6.

 

Основе

 

комбинаторике

 

54 

6.1.

 

Принципи пребројавања

 

54 

6.2.

 

Пермутације без понављања

 

55 

6.3.

 

Пермутације са понављањем

 

57 

6.4.

 

Варијације без понављања

 

57 

6.5.

 

Варијације са понављањем

 

58 

6.6.

 

Комбинације без понављања

 

59 

6.7.

 

Комбинације

 

са

 

понављањем

 

60 

7.

 

Биномна

 

формула

 

67 

8.

 

Теорија

 

графова

 

73 

8.1.

 

Основни појмови

 

74 

9.

 

Представљање графова помоћу рачунара

 

82 

9.1.

 

Шетње по графу

 

82 

9.2.

 

Матрица суседства

 

82 

9.3.

 

Матрице инциденције

 

85 

10.

 

Стабла

 

88 

10.1.

 

Бинарна стабла претраге

 

93 

11.

 

Теорија алгоритама

 

108 

11.1.

 

Алгоритми

 

108 

11.2.

 

Дијаграм

блок шема

 

110 

11.3.

 

Врсте алгоритамских шема

 

111 

11.3.1.

 

Линијске алгоритамске шеме

 

112 

11.3.2.

 

Цикличне алгоритамске шеме

 

114 

11.4.

 

Особине алгоритама

 

117 

11.5.

 

Провера исправности алгоритма

 

117 

12.

 

Математичка дефиниција алгоритма

  

122 

12.1.

 

Рекурзивне функције и алгоритми

  

123 

12.2.

 

Рекурзивни алгоритми

 

125 

12.3.

 

Черчова теза

 

127 

12.4.

 

Тјурингова машина

 

128 

13.

 

Теорија сложености 

a

лгоритама

 

133 

13.1.

 

Проблеми одлуке

 

134 

13.2.

 

Рачунски ресурси

 

134 

13.3.

 

Неукротивост

 

135 

13.4.

 

Особине алгоритама

 

135 

13.5.

 

Претраживање

 

136 

13.6.

 

Секвенцијално претраживање

 

137 

13.7.

 

Оптимизације секвенцијалног претраживања

  

139 

13.8.

 

Секвенцијално претраживање у уређеним табелама

 

140 

13.9.

 

Бинарно претраживање

 

141 

13.10.

 

Претраживање коришћењем бинарног стабла

 

143 

13.11.

 

Основне операције бинарног стабла 

 

145 

13.12.

 

Авл стабла

 

157 

13.13.

 

Црвено 

– 

црна стабла

 

160 

14.

 

Графовски алгоритми

 

162 

14.1.

 

Алгоритми 

разапињућа стабла

 

162 

14.2.

 

Алгоритми 

претрага у дубину

 

163 

14.3.

 

Алгоритам 

стабло претраге у дубину

 

164 

14.4.

 

Алгоритми 

претрага у ширину

 

167 

14.5.

 

Алгоритам 

стабло претраге у ширину

 

168 

14.6.

 

Дајкастрин алгоритам

 

171 

15.

 

Булова алгебра

 

185 

15.1.

 

Основни појмови

 

185 

15.2.

 

Докази и аксиоме

 

187 

15.3.

 

Основне теореме

 

188 

15.4.

 

Бинарна булова алгебра

 

188 

15.5.

 

Булове функције

 

189 

15.6.

 

Дисјунктивне и конјуктивне форме

 

189 

background image

Ц И Љ   П Р Е Д М Е Т А

 

Основни циљеви су

 

развијање способности

 

логичког размишљања,

 

 

развијање

 

логички исправне форме закључивања,

 

 

савладавање

 

основне технике доказивања,

 

 

савладавање рада

 

са симболичким изразима, 

 

 

савладавање рада

 

са дискретним структурама,

 

 

упознавање

 

са основним техникама пребројавања, 

 

 

схватање

 

конструкција алгоритма, 

 

 

савладавање теорије

 

графова,

 

 

развијање способности

 

коришћења математичке

 

аргументације

 

уочавање

 

како резултате дискретне математике је могуће 

користити у њеним применама.

 

Ј Е ЗИК   МАТ Е МАТ ИК Е

 

Поред

 

говорног

 

језика

 

у

 

математици

 

се

 

користе

 

разни

 

математички

 

знаци

-

симболи

 

који

 

чине

 

језик

 

математике

Тај

 

језик

 

је

 

универзалан

 

и

 

омогућава

 

једноставно

 

и

 

свима

 

разумљиво

 

записивање

 

математичких

 

садржаја

 

Језик

 

математике садржи:

 

 

константе

:

 

1

1, 3, , , 2,

2

 

 

променљиве

, , , , , ,

x y a b

 

 

 

операцијске

 

знакове

 

алгебарске операције: 

, , , /

  

логичке операције: 

, ,

,

,

    

скуповне операције: 

, , , ,

 

 

релацијске

 

знакове

, , , , ,

   

 

специјалне

 

знакове

:

 

 

 

 

, , , , , , , ,!,

 

 

Коришћењем ових елемената математичког језика

 

дефинишемо

 

изразе

 

и

 

формуле

 

Изрази

 

садрже

 

константе

променљиве

 

и

 

операцијске

 

знаке.

 

 

Пример

:

 

3

x

 

је

 

израз

Изрази

 

у

 

обичном

 

језику

 

представљају 

речи

 

Формуле

 

су изрази који морају да садрже релацијски знак.

 

 

Пример

:

 

3

7

x

 

 

је

 

формула

Формуле

 

су

 

у

 

обичном

 

језику

 

реченице

 

3

1 .

 

О С Н О В Н И

 

П О Ј М О В И

 

М А Т Е М А Т И Ч К Е

 

Л О Г И К Е

 

Ц И Љ Е В И

 

У Ч Е Њ А

 

Када

 

савладате ово

 

поглавље

 

требало

 

би

 

да

 

знате

 

1.

 

дефиницију

 

исказа

2.

 

дефиниције

 

логичких

 

операција

3.

 

приоритете

 

логичких

 

операција

4.

 

шта

 

су

 

таутологије

а

 

шта

 

контрадикције

5.

 

основне

 

логичке

 

законе

1 . 1 .

 

Л О Г И К А

 

Логика

 

је

 

вештина

 

и

 

метода

 

правилног

 

мишљења

Логика

 

је

 

наука

 

о

 

закључивању

 

и

 

као

 

таква

 

користи

 

се

 

у

 

најразличитијим

 

областима

 

науке

а

 

поготово

 

у

 

математици

Основа

 

је

 

целокупног

 

математичког

 

резоновања

Настала

 

је

 

у

  4. 

веку

 

п

.

н

.

е

На

 

основу

 

основних

 

ставова

које

 

називамо

 

аксиомама

одређује

 

се

 

који

 

су

 

математички

 

искази

 

тачни

а

 

који

 

не

и

 

формализују

 

се

 

поступци

 

добијања

 

сложених

 

реченица

 

из

 

простих

 

у

 

складу

 

са

 

правилима

 

исправног

 

закључивања

 

background image

 

5

1 . 2 . 1 .

 

И С К А З И

 

 

Реченице

 

које

 

имају

 

тачно

 

одређену

 

истинитосну

 

вредност

 

T

 

или

 

 

називају

 

се

 

искази

 

Значи

 

T

тзв

истинитосне

 

вредности

 

су

у

 

ствари

замене

 

редом

 

ових

 

речи

тачан

  (

истинит

), 

нетачан

  (

неистинит

лажан

).

 

Обично

 

се

 

записом

 

 

p

 

означава

 

истинитосна

 

вредност

 

реченице

 

p

Рецимо

 

2 2

4

T

 

   

2

3

6

 

 



 

и

 

сл

Реченице

 

које

 

имају

 

тачно

 

одређену

 

истинитосну

 

вредност

 

T

 

или

 

 

као

 

што

 

је

 

случај

 

са

 

реченицама

односно

 

формулама

  2 2

4

   

2

3

6

 

 

 

називају

 

се

 

искази

.

 

Формуле

 

су

 

уопште

 

математички

 

записи

 

који

 

прочитани

 

обичним

 

речима

 

дају

 

реченицу

 

природног

 

језика

Тако

запис

 

5

x

 

и

 

сл

јесте

 

пример

 

формуле

док

 

запис

 

као

 

6 7 2

 

 

то

 

није

 (

он

 

је

 

пример

 

израза

). 

 

Наравно

има

 

и

 

реченица

односно

 

формула

 

које

 

нису

 

искази

Такав

 

је

на

 

пример

случај

 

са

 

формулама

 

1 3,

1, 2, 3 ,

4

x

x

x

x

 

 

 

где

 

слово

 

x

 

служи

 

као

 

заједничка

 

ознака

  (

каже

 

се

 

и

 

променљива

за

 

реалне

 

бројеве

У

 

овом

 

случају

 

за

 

разне

 

вредности

 

променљиве

 

x

 

из

 

датих

 

формула

 

настају

 

посебне

 

формуле

 

и

 

свака

 

тако

 

добијена

 

формула

 

јесте

 

исказ

односно

 

тачна

 

је

 

или

 

нетачна

Тако

за

 

2

x

 

добијамо

 

ове

 

исказе

 

2 1 3, 2

1, 2, 3 , 2

4 2

 

 

 

чије

 

истинитосне

 

вредности

 

су

 

по

 

реду

 

T

T

Друкчије

 

се

 

каже

 

да

 2 

јесте

 

решење

 

прве

 

две

 

формуле

а

 

није

 

решење

 

последње

Променљива

 

је

 

уопште

 

неко

 

слово

 

као

  , ,

x y

 

које

 

договорно

 

служи

 

као

 

заједничка

 

ознака

 

за

 

чланове

 

неког

 

скупа

Некад

 

се

 

уместо

 

је

 

променљива

 

за

 

реалне

 

бројеве

 

говорило

 

је

 

општи

 

број

 

 

Истинитосна

 

вредност

 

исказа

 

је

 

 

T,

је

тачан

исказ,

,

je

нетачан

исказ.

p

p

p

 

 

 

Напомена

: 

Уместо

 

T

 

и

 

 

користе

 

се

 

и

 

ознаке

  1 

и

  0 . 

У

 

овом

 

случају

 

симболе

 1 

и

  0  

не

 

треба

 

схватати

 

као

 

бројеве

 1 

и

  0 . 

 

 

6

Пример

:

 

Реченица

 

: 5 3

8

p

 

 

је

 

исказ

 

и

 

има

 

тачну

 

истинитосну

 

вредност

тј

 

p

T

 

Пример

:

 

Реченица

 

: 5 3

8

q

  

 

је

 

исказ

 

и

 

има

 

нетачну

 

истинитосну

 

вредност

тј

 

q



.

 

 

Пример

Реченица

 

2

4

x

 

није

 

исказ

 

јер

 

нема

 

дефинисану

 

истинитосну

 

вредност

За

 

неке

 

вредности

 

променљиве

 

x

тј

 

за

 

2

x

 

 

формула

 

је

 

тачна

а

 

за

 

све

 

остале

 

је

 

нетачна

 

1 . 3 .

 

О С Н О В Н Е

 

Л О Г И Ч К Е

 

О П Е Р А Ц И Ј Е

 

 

У

 

свакодневном

 

језику

реченице

 

се

 

комбинују

 

у

 

сложене

 

реченице

коришењем

 

везника

 

и

,

 

или

не

,

 

ако

 

онда

 

и

 

многих

 

других

Истинитосна

 

вредност

 

сложене

 

реченице

 

условљена

 

је

 

истинитошћу

 

њених

 

делова

.  

 

Пример

:

  

:

p

Данас

 

сија сунце.

 

:

q

Данас

 

је

 

22. јул 2010

Сложена

 

реченица

 

гласи

 

Данас

 

сија сунце

 

и

 

данас

 

је

 

22. јул

 2010. 

Састоји

 

се

 

од

 

два

 

дела

 

спојених

 

везником

 

и

Симболички

 

се

 

може

 

написати

 

и

p

q

или

 

коришћењем

 

ознаке

 

за

 

логичку

 

операцију

 

и

у

 

облику

 

p

q

 

Основне

 

логичке

 

операције

 

су

:  

 

 

конјункција

 (

и

), 

у

 

ознаци

 

 

дисјункција

 (

или

), 

у

 

ознаци

 

 

импликација

 

(

ако

 - 

онда

), 

у ознаци 

 

еквиваленција

 (

ако

 

и

 

смо

 

ако

), 

у ознаци

 

 

негација

 

(

не

), 

у ознаци 

 

Напомена

: 

Разликујемо 

унарне

 

и 

бинарне

 

логичке  операције. 

Негација је унарна операција.

 

background image

 

8

 

Истинитосна таблица импликације

 

 

 

p

 

 

q

 

p

q

 

T

 

T

 

T

 

T

 

 

 

 

T

 

T

 

 

 

T

 

 

је нешто замршеније и изискује прилично допунског објашњења и 
„одбране“.  Најнеобичније  су  трећа  и  четврта  врста  те  таблице. 
Зашто се узима, рецимо да 

 

 

Ако 

 

p

 

q

T

онда

 

p

q

T

; као и:

 

Ако 

 

p

 

q

онда

 

p

q

T

.

 

 

Нека је 

p

, на пример, реченица: 

Србија је највећа на свету

, која је 

нетачна.

 

Тада, обе следеће реченице

 

 

Ако је Србија највећа на свету, онда је она већа од Француске.

 

Ако је Србија највећа на свету, онда је она већа од Црне Горе.

 

 

су тачне!

 

 

Код прве је присутан случај 



 

је 

T

, а код друге 



T

 

је 

T

Пазите,  првом  се  реченицом никако  не тврди да  је  Србија  већа

 

од 

Француске, већ једино условно каже: кад би Србија била највећа на 
свету, била би већа од Француске.

 

 

Постоје и разни обични математички примери који „бране“ таблицу 
импликације. Уочимо, рецимо формулу

 

3

2

x

x

 

 (

x

 

је природан број)

 

Која је тачна.

 

Замењујући  место 

x

 

редом  1,  2,  3,  4,  5,  ...  добијамо  ове  посебне 

формуле

 

 

1

3

1

2

  

,  2

3

2

2

 

,  3

3

3

2

  

,  4

3

4

2

 

, ... 

 

 

9

Које  би  требало  прихватити  као  тачне.  Међутим,  управо  у  тим 
формулама  су  присутни  наведени  необични  случајеви  тачности 
импликације. Прве две  формуле су  у вези са случајем 



 

је 

T

трећа  је  у  вези  са  случајем 



T

 

је 

T

,  а  остале  су  у  вези  са 

„природним“ случајем 

T

T

 

је 

T

 

Према истинитосној таблици импликације, она  је нетачна  једино  у 
једном  случају:  када  је 

p

 

тачна,  а 

q

 

нетачна  реченица.  У  свим 

осталим  случајевима  је  импликавија  тачна.  Случајеви 



 

је 

T



T

 

је 

T

 

се обично, ради лакшег памћења, описују овим речима: 

Из  лажи  произилази  све

,  а  случајеви 

T

T

 

је 

T

 

T

 

је 

T

 

речима: 

Истина произилази из било чега

 

Импликација се може читати

 

на следеће начине:

 

 

ако 

p

, онда 

q

p

 

је претпоставка последице 

q

p

 

повлачи

 

q

из 

p

 

следи 

q

p

 

је довољан услов за 

q

q

 

је потребан услов за 

p

 

За импликацију

p

q

везане су три

 

додатне врсте исказа:

 

 

конверзија

  

q

p

,

 

инверзија

  

p

q

  

контрапозиција

  

q

p

  

 

Пример: 

 

Ако је он

 

тенисер, онда је он

 

популаран

. (

импликација

Ако је он

 

популаран, онда је он

 

тенисер

. (

конверзија

Ако он

 

није тенисер, онда он

 

није популаран.

 

(

инверзија

Ако он

 

није популаран, онда он

 

није тенисер

. (

контрапозиција

)

 

 

Водећи рачуна о томе да је еквиваленција 

p

q

, у ствари, двојна 

импликација 

p

q

q

p

 

,  лако  се  гради  истинитосна  таблица 

еквиваленције. Она изгледа овако:

 

 

background image

 

11

Пример  1.

 

Решити  дату  формулу,  односно  наћи  све  вредности 

одговарајућих  променљивих  за  које  је  истинитосна  вредност 
формуле једнака 

T

а)

  3

5 10

x

 

 

(где 

x

), 

б)

 

6

x

 

(где 

x

), 

в)

 

9

x

x

 

г)

 

3

5

x

x

x

    

,  

д)

 

1

5

.

x

x

x

 

 

 

 

Пример 2.

 

Зашто је празан скуп подскуп било ког скупа?

 

 

Пример

 3.

 

Решити

 

формулу 

2

4

2

x

x

 

, где 

x

 

Дефиниција

: Знаке 

1

1

1

1

, , , ,

,

, ,

,

,

,

,

,

,

n

n

n

n

p q r s p q r s

p q r s

 

назовимо, договорно,

 

исказна слова. 

 

Тада се исказне формуле уводе на следећи начин:

 

 
(1)

 

Свако исказно слово је исказна формула.

 

(2)

 

Ако  су 

A

B

 

исказне  формуле,  онда  и  речи 

A

B

A

B

A

B

A

B

A

 

су исказне формуле.

 

(3)

 

Исказне  формуле  су  једино  оне  речи  које  се  могу  добити 
примењивањем коначно пута правила (1), (2).

 

 

Пример  4

.

 

За  сваку  од  датих  речи  утврдити  да  ли  јесте  или  није 

исказна формула

 

 

 

 

3

2

,

,

,

,

,

.

r

s

p

q

r r

s

p

q

p

q

 

 

 

Напомена

.

 

Обично  се  и  у  случају  исказних  формула,  ради  краткоће, 

изостављају  неке  заграде.  Један  такав  договор  се  односи  на 
изостављање спољних заграда, па се, рецимо формуле 

r

s

p

q

p

q

p

q

r

 

означавају  краће  овако: 

r

s

p

q

p

q

p

q

r

 

Пример 5. 

,

,

p

q

p p

q

r

p p

q

 

 

су формуле.

 

 

 

12

1 . 3 . 1 .

 

П Р И О Р И Т Е Т

 

Л О Г И Ч К И Х

 

О П Е Р А Ц И Ј А

 

Комбиновањем

 

исказних

 

слова

 

и

 

логичких

 

оператора

 

добијамо

 

сложене

 

изразе

као

 

што

 

су

 

на 

пример 

p

q

p

 

p

q

p

r

  

Приликом

 

одређивања

 

истинитосне

 

вредности

 

ових

 

израза

 

важно

 

је

 

знати

 

приоритет

 

логичких

 

операција

Наводимо таблицу приоритета логичких операција

 

 

логички

 

оператор

 

приоритет

 

 

,

 

 

,

 

 

 

1 . 3 . 2 .

 

П Р Е В О Д

 

Ј Е З И Ч К И Х

 

Р Е Ч Е Н И Ц А

 

Превод

 

садржаја

 

из

 

обичног

 

језика

 

у

 

запис

 

математичке

 

логике

 

је

 

један

 

од

 

најважнијих

 

проблема

 

хардверских

 

и

 

софтверских

 

послова

Проблем

 

се

 

своди

 

да

 

се

 

садржај

 

обичног

 

језика

 

сведе

 

на

 

тачан

 

и

 

недвосмислен

 

логички

 

запис

 

који

 

може

 

да

 

буде

 

предмет

 

даљег

 

проучавања

 

Пример

:  

Аутоматски

одговор

 

не

 

може

 

бити

 

послат

 

ако

 

је

 

унутрашња

 

меморија

 

пуна

 . 

Нека

 

је

 

реченица

 

p

Одговор

 

се

 

аутоматски

 

шаље

Нека

 

је

 

реченица

 

q

Унутрашња

 

меморија

 

је

 

пуна

Онда

 

p

 

је

 

реченица

Одговор

 

се

 

не

 

шаље

 

аутоматски

Логички

 

запис

 

би

 

био

 

q

p

 

 
 
 
 
 
 
 
 

background image

 

14

З А Д А Ц И

 

И   П И Т А Њ А   З А

 

П Р О В Е Р У   З Н А Њ А

 

 

1.

 

Шта је исказ?

 

2.

 

Навести основне логичке операције.

 

3.

 

Шта је таутологија?

 

4.

 

Невести основне логичке законе.

 

5.

 

Испитати да

 

ли

 

су

 

дате реченице

 

искази

а

)

 

1

1

7

4

,   

 

б

2

2

2

x

y

xy

в

2

2

2

 

,   

г

2

x

y

 

Решење

а

да

,  

 

 

б

да

в

да

 

 

г

не

 

6.

 

Одредити

 

истинитосну

 

вредност

 

следећих

 

исказа

а

)

 

1

1

7

4

,   

 

б

2

2

2

x

y

xy

в

2

2

2

 

,   

г

 

1 3

3

5

 

Решење

а

)

 

1

1

7

4



б

)

2

2

2

x

y

xy

T

в

)

2

2

2

 



г

)

 

 

1 3

3

5

T

T

T

 

7.

 

Дати

 

су

 

искази

 

1

1

1

1

10

:

2

3

4

5

3

p

 

 

 

1

1

1

1

37

:

2

3

4

5

6

q

 

,  

1

1

1

1

:

7

2

3

4

5

r

,     

1

1 1

1

2

:

2

3 4

5

5

s

 

15

Одредити

 

њихову

 

тачност

 

и

 

на

 

основу

 

тога

 

одредити

 

истинитосну

 

вредност

 

следећих

 

изказа

 

а

)

 

p

q

r

,  

   

б

)

 

p

q

r

s

   

   

в

)

p

q

r

s

 

,     

г

)

p

q

r

s

 

 

Решење

Како

 

је

 

 

p

T

 

q

T

 

r



 

s



а

)

 

p

q

r

(

T

T

)

 

T

 

T

б

)

 

p

q

r

s

 (

T

T

)

    

T

 

T

в

)

p

q

r

s

 



г

)

 

p

q

r

s

 



 

8.

 

Дати

 

су

 

искази

 

 

3

5

4

3

2

2

3

4

: 2

2

p

x y

x y

x y

 ,    

 

2

2

4

2

6

4

3

: 3

3

q

x y

x y

xy



2

2

2

2

4

r

x

y

x

y

x

y

,    

2

2

2

2

4

4

s

x

y

x

xy

y

 

Одредити

 

њихову

 

тачност

 

и

 

на

 

основу

 

тога

 

одредити

 

истинитосну

 

вредност

 

следећих

 

изказа

 

а

)

 

p

q

r

,  

   

б

)

 

p

q

r

s

,  

в

)

p

q

r

s

 

,     

г

)

 

p

q

r

s

 

 

Решење

Како

 

је

 

 

 

 

,

,

p

q

r





T

 

s



а

)

 

p

q

r

T

б

)

 

p

q

r

s



в

)

p

q

r

s

 

 

T

г

)

 

p

q

r

s

 



 

9.

 

Написати

 

на више начина

 

импликацију

 

2

0

x

x

  

 

background image

 

17

б

p

q

p

q

   

 

је

 

таутологија

в

p

q

p

 

 

је

 

таутологија

г

)

 

p

p

p

 

је

 

таутологија

д

)

 

 

p

q

r

p

r

q

r

 

 

Нека је 

M

p

q

r

 

N

p

r

q

r

 

и

 

 

F

p

q

r

p

r

q

r

 

 

 

p

 

 

q

 

 

r

 

p

q

 

 

M

 

p

r

 

q

r

 

 

N

 

 

F

 

T

 

T

 

T

 

T

 

T

 

T

 

T

 

T

 

T

 

T

 

T

 

 

T

 

 

T

 

T

 

T

 

 

T

 

 

T

 

T

 

T

 

T

 

T

 

T

 

T

 

T

 

 

 

T

 

 

T

 

 

 

 

 

T

 

T

 

T

 

T

 

T

 

T

 

T

 

T

 

 

T

 

 

T

 

 

 

T

 

 

 

 

 

T

 

 

 

T

 

T

 

T

 

 

 

 

 

 

 

 

 

 

 

 

Формула

 

 

p

q

r

p

r

q

r

 

 

није

 

таутологија

 

12.

 

Доказати

 

да

 

су

 

следеће

 

формуле

 

таутологије

  

 

а

)

 

p

q

q

p

 

закон

 

комутације

 

б

)

p

q

p

q

   

 

Де

 

Морганов

 

закон

 

в

p

p

p

 

закон

 

иденпотенције

 

г

)

 

p

p

 

 

закон

 

двојне

 

негације

 

д

)

 

 

p

q

p

r

p

q

r

 

закон

 

дистрибуције

 

 

 

18

13.

 

Методом

 

свођења

 

на

 

противречност

 

испитати

 

да

 

ли

 

је

 

следећа

 

формула

 

таутологија

 

p

q

p

p

Решење

:  

Ако

 

посматрана

 

формула

 

не

 

би

 

била

 

таутологија

морало

 

би

 

бити

за

 

неке

 

вредности

 

p

 

и

 

q

 

који

 

се

 

појављују

 

у

 

овој

 

формулу

 

да

 

је

 

p

q

p

p



То

 

се

 

може

 

десити

 

у

 

случају

 

да

 

је

 

p

q

p

T

 

и

 

 

p



На

 

основу

 

тога

 

добијамо

 

да

 

је

 

 

p

q

T

односно

 

p

q



Овај

 

израз

 

може

 

бити

 

нетачан

 

само

 

у

 

једном

 

случају

а

 

то

 

је

 

када

 

је

 

 

p

T

 

и

 

 

q



Како

 

смо

 

већ

 

претпоставили

 

да

 

је

 

 

p



долазимо

 

до

 

контрадикције

Значи

 

не

 

можемо

 

наћи

 

вредности

 

израза

 

p

 

и 

q

 

за

 

које

 

је

 

полазна

 

формула

 

нетачна

Према

 

томе

 

полазна

 

формула

 

мора

 

бити

 

таутологија

 

14.

 

Методом

 

свођења

 

на

 

противречност

 

испитати

 

да

 

ли

 

су

 

следеће

 

формуле

 

таутологија.

  

а

)

 

p

p

q

б

)

 

p

q

p

p

в

)

 

p

r

p

q

r

r

г

)

 

p

q

p

q

  

д

)

 

p

q

p

p

q

 

 
 

К Љ У Ч Н Е   Р Е Ч И

 

Исказ

 

Конјункција

 

Дисјункција

 

Импликација

 

Еквиваленција

 

Негација

 

Таутологија

 

Контрадикција

 

 

background image

20 

Рачунари  морају  имати  могућности  да  меморишу  и  обрађују  и 

ненумеричке,  односно  текстуалне  податке.  Они  су  или 

низови

 

(

string

)  или 

знакови

  (

charácter  data

), 

затим

 

слова

,

 

знакови

 

интерпункције

математички

 

знаци

специјални

 

знаци

 

и слично.

 

Подаци  овог  типа  су  меморисан  у  облику  низа  битова.  Данас  се 
користе  ASCII  и  EBCDIS  код.  На  пример  1111001  представља 
слово б. 

 

 

Дакле, бинарни бројеви су основа за функционисање рачунара. 

Дигитална

 

кола

 

комбинују

 

нуле

 

и

 

јединице

и

 

генеришу

 

нове

 

нуле

 

и

 

јединице

Машинске

 

инструкције

 

су

 

такође

 

приказане

 

као

 

низови

 

нула

 

и

 

јединица

Сви  програми  написани  у  асемблеру  или  неком 

вишем  програмском  језику

 

да  би  могли  да  раде  морају  бити

 

преведени у низове нула и јединица.

 

2 . 1 .

 

Д И Г И Т А Л Н А   И   Л О Г И Ч К А   К О Л А

 

 

Клод

 

Елвуд

 

Шенон

  (

Claude  Elwood  Shannon

,  1916.  –  2001) 

био

 

је

 

амерички

 

научник

 

и

 

инжењер

Међу

 

најзначајнија

 

открића

 

овог

 

научника

 

спадају

 

теорија

 

информација

 

и

 

дизајн

 

дигиталних

 

рачунара

 

и

 

кола

1938.  године  открио  је  везу  између  таблица  истинитости  и 

електричних  кола.

 

Шенон

 

је

 

познат

 

као

 

утемељивач

 

информационе

 

теорије

 

са

 

својим

 

научним

 

радом

 

објављеним

  1948. 

године

Такође

 

се

 

сматра

 

утемељивачем

 

теорије

 

дигиталног

 

рачунара

 

и

 

теорије

 

дизајна

 

дигиталних

 

кола

када

 

је

 

као

 21-

годишњи

 

студент

 

МIТ

-

а

написао

 

тезу

 

где

 

доказује

 

да

 

је

 

примјеном

 

Булове

 

алгебре

 

на

 

дигитална

 

електрична

 

кола

могуће

 

решити

 

било

 

који

 

логички

 

или

 

нумерички

 

проблем

.  

21 

 

Дигитална

 

кола

 

су

 

тако

 

пројектована

 

да

 

имплементирају

 

принципе

 

бинарне

 

аритметике

 

и

 

математичке

 

логике

.  

 

 

Исказне формуле у којима се појављују само операције 

, ,

  

при

 

чему

 

 

се  односи  само

 

на

 

исказна

 

слова

имају

 

једну

 

занимљиву

 

интерпретацију

 

која

 

се

 

користи

 

у

 

техници,  у 

пројектовању дигиталних кола

 

и

 

назива

 

прекидачка

 

алгебра

. 

 

 

Исказна

 

слова

 

се

 

третирају

 

као

 

нормално

 

отворени

 

прекидачи

,

 

а

 

њихова

 

негација

 

као

 

нормално

 

затворени

 

прекидачи

.

 

Ако

 

исказно

 

слово

 

има

 

вредност

 

1

p

 

сматра

 

се

 

да

 

је

 

прекидач

 

затворен

тј

да

 

проводи

 

струју

а

 

за

 

0

p

 

је  отворен,  тј.  да  не 

проводи струју.

 

 

 

 

Формула

 

се

 

третира

 

као

 

мрежа

 

са

 

два

 

краја

 

састављена

 

од

 

прекидача

 

који

 

су

 

повезани

 

паралелно

 

или

 

серијски

Таутологијама

 

одговарају

 

мреже

 

које

 

увек

 

проводе

 

струју

 

Пример

:  

Посматрајмо

 

прекидачко

 

коло

 

које

 

садржи

 

прекидач

 

и

 

сијалицу

Вредност

  1 

додељујемо

 

прекидачима

 

p

 

и 

q

 

када  су  затворени,  тј 

ако кроз њих протиче струја. У супротном додељујемо им вредност 
0. Када су прекидачи редно везани, сијалица ће светлети и коло ће 
имати  вредност  1  само  ако  су  оба  прекидача 

p

 

и 

q

 

затворена. 

Према томе, ово коло ће одговарати исказу 

p

 

и 

q

, односно 

p

q

 

и 

зове се 

А

ND –

и

 

коло

background image

23 

 

Коло са једним прекидачем 

p

,  у коме сијалица светли

 

само ако је 

прекидач  отворен.  Према  томе  коло  ће

 

имати  вредност  1  ако  је 

прекидача 

p

 

затворен,  односно  ако  је 

p

 

једако  0.  Такво  коло 

назива се

 

не

 

коло

 

или 

инвертор

 

p

 

 

 
 

Елементи дигиталних логичких кола осим стандардних наведених 

(

и

 

коло

или

 

коло

 

и 

не

 

коло

) су и следећа кола:

 

ни

 

коло

, одговара логичком изразу 

p

q

 

 

 

 

нили коло

, 

одговара логичком изразу 

p

q

 

 

 

ексклузивно

 

или

 

одговара логичком изразу 

p

q

 

 

 

 

24 

 

З А Д А Ц И

 

И   П И Т А Њ А   З А   П Р О В Е Р У   З Н А Њ А

 

 

1.

 

Шта је прекидачка алгебра?

 

2.

 

Зашто

 

се користи

 

бинарни систем?

 

3.

 

Шта је бит?

 

4.

 

Формули 

 

p

q

p

r

 

одредити:

 

а

прекидачку шему,

 

б

)

 

дигитално логичко коло.

 

 

Решење

:  

а

 

б

 

 

9.

 

Формули

 

p

q

r

 

 

одредити

а

прекидачку шему,

 

б

)

 

дигитално логичко коло.

 

 

Решење

:  

 
 

background image

26 

а

)  

 

 

б

 

 

в)

 

 

27 

Решење

 

а

)

 

 

p

q

r

p

q

 

 

 

 

 

 

12.

 

Написати  логичке  формуле  и  нацртати  прекидачке

 

шеме

 

које

 

одговарају следећим дигиталним електричним колима:

 

а

 

б

)

 

 

 

Решење

 

а

 

p

q

r

 

 

background image

29 

3 .

 

О С Н О В Н И   П О Ј М О В И  

Т Е О Р И Ј Е   С К У П О В А

 

Ц И Љ Е В И

 

У Ч Е Њ А

 

 

Када

 

ово поглавље проучите требало би

 

да

 

1.

 

знате дефиниције

 

основних

 

скуповних

 

релација

2.

 

знате дефиниције

 

основних

 

скуповних

 

операција

3.

 

знате

 

шта

 

је

 

кардинални

 

број

 

скупа

4.

 

знате шта је

 

Раселов парадокс.

 

 

3 . 1 .

 

П О Ј А М   С К У П А

 

Са скуповима радимо свакодневно у различитим приликама. Корпа 
јабука,  стадо  оваца,  скуп  континената,  популација  бактерија,  скуп 
тачака  на  кружници,  скуп  природних  бројева,  све  су  то  примери 
скупова. Скоро свака делатност човека односи се на неке скупове.

 

 

Одлучујући корак  у синтетизовању математичких знања  је

 

теорија 

скупова, односно теорија бесконачних скупова

чији

 

је творац

 

Џорџ

 

Кантор  (

Georg  Kantor

  1845.-1918.

).  Настала  је  као  резултат 

изградње строге теорије реалних бројева. Кантор је први у историји 
математике 

прихватио 

појам 

бесконачног 

без 

икаквих 

тајанствености.

 

 

 

Скуп

 

је

 

основни

 

појам

 

који

 

се

 

не

 

дефинише

Чине

 

га

 

елементи

 

који

 

имају

 

бар

 

једно

 

заједничко

 

својство

 

Објекти скупа називају се његовим 

елементима

.

 

 

 

Скупови се обележавају

 

најчешће великим словима 

A

B

C

, ... 

а његови елементи малим словима 

a

b

c

, ... 

 

 

Неки  елемент 

a

 

може  припадати

 

датом  скупу 

A

,  што  се 

означава  са 

a

A

,  или  не  припадати  истом  скупу,  што  се 

означава са 

a

A

 

30 

 

Скуп који нема елемената назива се 

празан

 

скуп

 

и обележава са 

 

 

За  графичко

 

представљање  скупова  користе  се 

Венови

 

дијаграми

.

 

 

 

 

 

Кажемо  да  је 

A

 

подскуп

 

скупа 

B

 

и  пишемо 

A

B

,  ако  сваки 

елемент

 

скупа 

A

 

припада истовремено и скупу 

B

.  

 

A

B

x x

A

x

B

 

 

 

 

Два  скупа 

A

 

и 

B

 

су 

једнака

,  ако  сваки  елемент  скупа 

A

 

припада  и  скупу 

B

 

и  ако  сваки  елемент  скупа 

B

 

истовремено 

припада и скупу

A

 

A

B

x x

A

x

B

 

background image

32 

 

Пресек

 

скупова 

A

 

и 

B

 

је скуп 

A

B

x x

A

x

B

 

 

 

Пример

:

 

 

1, 2

A

2, 3, 6, 7

B

 

2

A

B

 

 

Ако је пресек два скупа 

A

 

и 

B

 

празан, тј.

 

A

B

 

, тада за 

 

та 

два скупа кажемо да су 

дисјунктни

.

 

 

 

Ако  је  дато  коначно  много  скупова 

1

2

,

,

,

n

A A

A

 

њихов  пресек 

је:

 

 

1

2

1

n

i

n

i

A

A

A

A



 

 

Разлика

 

скупова 

A

 

и 

B

 

је скуп 

A B

x x

A

x

B

 

 

 

 

33 

 

Пример

:

 

 

1, 2

A

2, 3, 6, 7

B

 

1

A B

,

3, 6, 7

B A

 

 

Симетрична

 

разлика

 

скупова

  A

 

и 

B

 

је унија скупова 

A B

 

и 

B A

, тј.

 

 

 

A B

A B

B A

 

Комплемент

 

скупа 

A

 

у  односу  на  скуп 

B

 

(или  допуна  скупа 

A

 

до скупа 

B

) где је 

A

B

 

је скуп 

B

C A

B A

 

 

Пар  елемената 

( , )

a b

 

називамо 

уређеним

 

паром

 

(или  уређеном 

двојком) ако је тачно одређено који је елемент на првом, а који 
на другом месту.

 

 

 

Уређени парови 

( , )

a b

 

и 

( , )

c d

 

су једнаки ако и само ако је 

a

c

 

и 

b

d

 

 

Декартовим  производом

 

скупова 

A

 

и 

B

 

назива  се  скуп 

( , )

A B

a b a

A

b

B

 

Пример:

 

Дати су скупови 

1, 2, 3

A

 

и 

,

B

x y

 

(1, ), (2, ), (3, ), (1, ), (2, ), (3, ) ,

A B

x

x

x

y

y

y

 

( ,1), ( , 2), ( , 3), ( ,1), ( , 2), ( , 3)

B A

x

x

x

y

y

y

 

Очигледно  је 

A B

B A

,  што  значи  да  за  Декартов  производ 

скупова не важи закон комутације.

 

 

Декартов  производ 

A A

 

се  означава  са 

2

A

.  Декартов  производ 

2

 

представља реалну раван.

 

n

A A

A

A

 

 

и 

n

 

background image

35 

 

3 . 3 .

 

Б Р О Ј   Е Л Е М Е Н А Т А   С К У П А

  -  

К А Р Д И Н А Л Н И   Б Р О Ј

 

Одређивање  броја  елемената  коначних  скупова  своди  се  на  њихово 
пребројавање . Међутим, када се ради о бесконачним скуповима ,ствар 
је  много  сложенија.  Тада  се  срећемо  са  доста  неочекиваним 
ситуацијама.

 

 

 

Ако постоји „1

-

1“ и „на“ пресликавање 

f

 

скупа 

A

 

на скуп 

B

(

бијекција) онда се за скупове 

A

 

и 

B

 

каже да су еквивалентни.

 

 

Еквивалентни  скупови 

A

 

и 

B

 

имају  исти 

кардинални

 

број

у

 

ознаци

 

 

 

k A

k B

 

 

Код

 

коначних

 

скупова

 

кардинални

 

број

 

представља

 

број 

елемената скупа.

 

 

Пример:

 

Еуклидова

 

аксиома

 

каже

Целина

 

је

 

већа

 

од

 

дела

 

Кардинални

 

број

 

скупа

 

природних

 

бројева

 

једнак

 

је

 

кардиналном

 

броју

 

скупа

 

свих

 

парних

 

природних

 

бројева

 

Та

 

једнакост

 

се

 

види

 

из

 

пресликавања

 

1

2

3

4

2 1 2 2

2 3 2 4

2

n

n

 

Дакле 

 

2

k

k

 

Још  1638  године  Галилеј  је  сматрао  да  се

 

овде

 

ради  о  парадоксу. 

Интиутивно  се  чини

 

да

 

је

 

скуп  природних  бројева  има  више 

елемената него скуп парних природних бројева. 

 

 

Канторова

 

теорија  показује  да  се  бесконачни  скупови  могу 

упоређивати. Скупови 

 

и 

2

 

су еквивалентни, али скупови 

 

и 

 

нису.

 

 
 
 

36 

 

Кардинални  број  скупа 

 

је  већи  од  кардиналног  броја  скупа 

значи  можемо  рећи  да  је  неки  бесконачни  скуп  „бесконачнији“  од 
другог.

 

 

Пример:

 

Скуп

 

свих

 

тачака

 

праве

 

еквивалентан

 

је

 

са

 

скупом

 

тачака

 

равни

Скуп

 

свих

 

реалних

 

бројева

 

између 0 и 1 има већи кардинални број 

од скупа свих рационалних бројева 

 

Пример:

 

Кардинални

 

број

 

празног

 

скупа

 

је 0, и пишемо 

 

0

k

 

 

 

Кардинални  број  скупа  природних  бројева  означава  се 
хебрејским словом 

 

и чита се 

алеф

са

 

индексом

 0 

 

0

k

 

 

background image

38 

 

Јасно  је  зашто  је  ова  теорија  на  почетку  свога  настанка  имала 
велики  број  противника.

 

Међутим

почетком

 

овог

 

века

 

када

 

је

 

теорија

 

скупова

 

доживљавала

 

свој

 

процват

 

и  налази  широку 

примену  у  математици.  Истовремено,  уочене  су  и  прве 
противречности,  односно

 

парадокси

Најчувенији

 

је

 

Раселов

 

парадокс

 

настао

 1902. 

године

Постоје  разне  интерпретације  Раселовог  парадоса,  пардокс 
берберина, пардокс библиотеке

 

и многи други.

 

 

Пример:

 

парадокс берберина

 

У

 

неком

 

селу

 

живео

 

је

 

берберин

који

 

је

 

бријао

 

све

 

оне

 

становнике

 

села

који

 

се

 

нису

 

бријали

 

сами

Да

 

ли

 

је

 

берберин

 

бријао

 

самог

 

себе

Ако

 

би

 

се

 

берберин

 

бријао

он

 

би

 

био

 

један

 

од

 

становника

 

који

 

се

 

брију

 

сами

па

 

се

 

не

 

би

 

смео

 

бријати

Ако  се  пак  берберин  не  би 

бријао, био би један од становника села који се не брију сами, па би 
се морао бријати.

 

Како

 

се

 

решава

 

овај

 

парадокс

Једноставно

није

 

могуће

 

да

 

постоји

 

село

 

у

 

коме

 

би

 

берберин могао

 

да

 

ради

 

овако

 

како

 

је

 

речено

.  

 

Суштина  Раселовог  парадокса  своди  се  на  следеће:  Ако  за  сваку 
особину постоји скуп свих објеката који садрже ту особину, онда то 
исто  важи  и  за  особину 

скуп  не  припада  самом  себи

,  односно, 

питање  је,  да  ли  скуп  свих  скупова  који  не  садрже  себе,  садржи 
себе?

 

 

 

Нека је 

R

 

скуп свих скупова 

S

 

који не садрже себе као 

елемент, односно 

R

S S

S

.  

 

Нека  је 

S

 

скуп  свих  објеката  за  које  важи  ова  особина.  Да  ли 

S

 

припада  самом  себи?  Ако  припада,  онда  значи  да    задовољава 
особину ‘скуп не припада самом себи ‘, што је контрадикција. Ако 
пак не припада самом себи, онда ће да задовољи тражену особину, 
а ће баш да припада самом себи, што је опет контрадикција.

 

 

Појава  Раселовог  парадокса  озбиљно  је  уздрмала  Канторову 
теорију  скупова.  Развила  су  се  три  правца  у  математици  којима  је 
било  могуће  решити  настале  проблеме,  Расел 

логицизам,  Бауер

-

интуиционализам, Хилберт 

формализам.

 

39 

 

Расел  је  дефинисао  појам  класе  и  један  од  начина  превазилажења 
овог парадокса се своди

а се скуп свих скупова не сматра скупом, 

већ класом, која је уопштење појма скупа.

 

 

З А Д А Ц И   И   П И Т А Њ А   З А   П Р О В Е Р У   З Н А Њ А

 

 

1.

 

Шта су Венови дијаграми?

 

2.

 

Навести и дефинисати основне скуповне операције.

 

3.

 

Која је веза између математичке логике и теорије 
скупова?

 

4.

 

Навести скуповне релације.

 

5.

 

Дефиниција уређеног пара

6.

 

Дефиниција

 

Декартовог

 

производ скупова.

 

7.

 

Шта је партитивни скуп?

 

8.

 

Шта

 

је комплемент скупа?

 

9.

 

Који су скупови дисјунктни?

 

10.

 

Шта је кардинални број скупа?

 

11.

 

Како

 

гласи

 

Раселов

 

парадокс

12.

 

Колики

 

је

 

кардинални

 

број

 

партитивног скупа празног

 

скупа

 

13.

 

Ако је 

1, 2, 3

A

,

2, 3, 4, 5

B

 

и 

2, 3, 4, 5, 6, 7

C

одредити 

 

а

,

,

A

B

A

B

C

 

б

,

,

A

B

A

B

C

 

ц

 ,

 .

A B

C A 

д

)

 

A B

 

P A

 

Решење:

 

а

1, 2, 3, 4, 5

A

B

,

1, 2, 3, 4, 5, 6, 7

A

B

C

б

2, 3

A

B

,

2, 3

A

B

C

ц

 

1

A B

,

4, 5, 6, 7

C A

д

)

 

  

 

 

 

 

 

 

 

 

 

 

1,1 , 1, 2 , 1, 3 , 1, 4 , 2, 2 , 2, 3 , 2, 4 , 2, 5 , 3, 2 , 3, 3 , 3, 4 , 3, 5

A B

 

background image

41 

 

17.

 

Дати су скупови 

, , ,

A

a b c d

, , 4

B

a b

2, 4,

C

c

, , 3

D

a b

 

и 

 

1,

E

b

. Одредити а,б,ц,д ако

 

знамо да је 

B

A

C

A

D

A

 

и 

E

B

 

Решење:

 

1,

2,

3,

4

a

b

c

d

.

 

 

18.

 

Дати су скупови 

,

10

A

n n

n

, 2

7

B

n n

n

2, 3, 6

C

, Одредити скупове

 

X

 

и 

Y

 

ако знамо да је 

X

A

C

X

B

 

Решење:

 

2, 3, 4, 5, 6, 7

X

.

 

 

19.

 

Применом таутологија доказати следеће скуповне једнакости:

 

 

а

A

A

B

A

,

 

б

/

A B

B

 

,

 

в

A

B

B

A

 

г

 

 

A

B

C

A

B

A

C

.

 

 

Решење:

  

а

)

  

x

A

A

B

x

A

x

A

x

A

B

x

A

x

A

x

A

x

B

x

A

 

 

 

 

 

 

Ако уведемо ознаке: 

:

p x

A

 

и 

:

q x

B

, добијамо исказну 

формулу

 

 

p

p

q

p

.  Коришћењем  таблице  лако  се  доказује  да  је 

формула таутологија, па самим тим и свака формула која се на њу 
може свести је тачна.

 

 

б

Формули 

/

A B

B

 

 

одговара таутологија 

p

q

q

 



 
 
 
 

42 

 
 

К Љ У Ч Н И   Т Е Р М И Н И

 

 

Скуп

 

Пресек скупова

 

Унија скупова

 

Разлика скупова

 

Подскуп

 

Партитивни скуп

 

Дисјунктни скупови

 

Уређени пар

 

Декартов производ

 

Комплемент

 

скупа

 

Кардинални број

 

Алеф

 

нула

 

Парадокс

 

 

background image

44 

 

 

Ако

 

A

B

онда

 

се

 

скуп

 

2

A

A A

 

назива 

Декартовим

 

квадратом

 

Релација може да има следеће особине:

 

 

Нека је 

2

A

. За релацију тада кажемо да је 

 

 

(Р) 

рефлексивна

 

акко 



x

A

x x

 

 

 

(С) 

симетрична

 

акко 



,

x y

A

x y

y x

 

 

(АС) 

антисиметрична

 



,

x y

A

x y

y x

x

y

 

 

(Т) 

транзитивна

 



, ,

x y z

A

x y

y z

x z

 

 

Релација у предходном примеру је рефлексивна, симетрична и 
транзитивна.

 

 

Дефиниција:

 

 

Релација која је рефлексивна, симетрична и транзитивна назива

 

се 

релација

 

еквиваланције

. 

Релација која је рефлексивна, антисиметрична и транзитивна назива

 

се 

релација

 

поретка

.

 

 

Пример

:  Релације  еквиваленције  су  једнако,  подударно  и  др.,  а 

релације поретка су 

,

 

 

и др.

 

 

Свака релација еквиваленције разлаже скуп

 

на класе еквиваленције.

 

 

Дефиниција:

 

45 

Ако

 

је

 

релација еквиваленције, онда се 

класа

 

елемента x, у ознаци 

x

C

 

дефинише као 

x

C

y x

y

 

Скуп 

x

C

 

се зове 

количнички

 

скуп

 

Све класе еквиваленције једног скупа чине његово разлагање на 
дисјунктне подскупове, а њихова унија је сам полазни скуп.

 

 

Пример

:  У  скупу 

12

S

x x

x

 

 

дефинисана  је  релација  на 

следећи

 

начин: 

,

:

3

x y

S x y

x

y

Показати да је задата релација релација еквиваленције. 

 

Одредити класе еквиваленције и количнички скуп.

 

 

Релација је рефлексивна, јер је 

: 3

3 0

x

S

x

x

 

 

Релација је симетрична, јер је 

 

,

: 3

3

3

3

3

x y

S

x

y

x

y

k

y

x

x

y

k

x

y

y

x

  

 

 

Релација је транзитивна, јер је 

 

 

,

: 3

3

3

3

3

3

3

3 .

x y

S

x

y x

y

z

x

y

k

y

z

m

x

z

x

y

y

z

k

m

k

m

n

 

 

 

Значи ради се о релацији еквиваленције.

 

 

Дата релација раставља скуп 

S

 

на три

 

подскупа.

 

0

1

2

3, 6,9,12

3

,

1, 4, 7,10

3

1 ,

2,5,8,11

3

2 .

S

x x

S

x

k

S

x x

S

x

k

S

x x

S

x

k

 

 

  

 

Количнички скуп је 

0

1

2

/

,

,

S

S S S

 

У 

области 

пројектовања

 

релационих 

база 

података

нормализација

 

представља  систематски  метод  за  осигуравање  да  је 

структура  базе  података  погодна  за  упите  општег  типа,  и  да  не 
испољава  извесне  нежељене  карактеристике 

аномалије  уношења, 

background image

47 

Од  кључног  значаја  за  разумевање  МОВ

-

а  је  правити  разлику 

између појмова објекат

 (

ентитет) и тип

Тип представља дефинисиње, али не и опредмећивање, особина 

и  даје  опсег  релација  које  одређени  објекти  морају  имати.  Објекат 
представља опредмећивање, конкретно појављивање неког типа.

 

Човек, као тип, има особине име

тежина

 

и висина. Тиме је сам 

тип дефинисан. С друге стране, ако кажемо да  је  Петар

 

тежак 80

 

kg и 

висок 180

 

cm, а  Милан

 

тежак 90

 

kg, а висок 170

 

cm, онда говоримо о 

два  конкретна  појављивања  типа  човек,  тј  о  два  објекта  која  су  типа 
човек. Исто и када говоримо о релацијама, тј. односима, у дефиницији 
типа човек

 

можемо рећи да човек може да не вози ни једно возило, али 

и да може возити бесконачно много возила. Али посебно ћемо за Петра

 

рећи да вози један аутомобил, а за Милана

 

да вози комби и мотоцикл.

 

Релације  представљају  концепт  који  објашањава  на  који  начин  су  два 
или више објеката повезана. Ако узмемо бинарну релацију, тј. релацију 
између  два  објекта,  као  базични  тип  релације,  онда  говримо о односу 
где  се  релација,  тј.  однос  може  посматрати  из  два  угла.  У  релацији 
лечење,  можемо  да  кажемо  да  доктор  лечи  пацијента,  али  и  да  је 
пацијент излечен од стране доктора. За релације су од великог значаја 
кардинални  бројеви.  Тако  на  пример  доктор  може  да  излечи 
бесконачно  много  пацијената,  али  појединачни  пацијент  може  бити 
излечен од само једног доктора

 

П И Т А Њ А   И   З А Д А Ц И   З А   П Р О В Е Р У   З Н А Њ А

 

 

1.

 

Дефинисати

 

појам релације

.

 

2.

 

Навести особине релације.

 

3.

 

Која релација је релација еквиваленције

?

 

4.

 

Која релација је релација поретка

?

 

5.

 

Доказати да је релација једнакости, релација еквиваленције.

 

 

К Љ У Ч Н Е   Р Е Ч И

 

 

Релација

 

Рефлексивност

 

Симетричност

 

Транзитивност

 

Класе еквиваленције

 

Количнички скуп

 

Модел објекти 

– 

везе (МОВ)

 

 

48 

5 .

 

Ф У Н К Ц И Ј Е

 

Ц И Љ Е В И

 

У Ч Е Њ А

 

 

Када

 

ово поглавље проучите требало би

 

да

 

знате

 

1.

 

дефиницију појма функције,

 

2.

 

особине функција,

 

3.

 

да набројите различите врсте функција.

 

 

Појам

 

функције

 

или

 

пресликавања

 

спада

 

у

 

основне

 

математичке

 

категорије

Код

 

функција

као

 

и

 

код

 

релација

успоставља

 

се

 

веза

 

између

 

елемената

 

два

 

скупа

али

 

док

 

код

 

релација

 

једном

 

елементу

 

скупа

 

A

 

могу

 

одговарати

 

више

 

елемената

 

скупа

 

B

код

 

функција

 

једном

 

елементу

 

скупа

 

A

 

може

 

одговарати

 

смо

 

један

 

елеменат

 

скупа

 

B

 

 

Пут  од  фиксних  величина  ка  променљивој,  као  апстракцији  вишег 
степена,  везан  је  за  период  од  13.  до  16.  века.  Декартова  метода 
координата  омогућила  је  дефинисање  функционалне  зависности

 

и 

даљи  развој  математике.  Тек  у  19.  веку  немачки  математичар 

L. 

Dirichlet  (1805-

1859)  направио  је  одлучијући  корак  у  уопштавању 

појма  функције,  прекинувши  традиционална  схватања  којим  се  појам 
функције  изједначавао  са  појмом  аналитичког  израза  и  даје 
дефиницију коју ми данас модификовано користимо. Модерна теорија 
скупова отишла је још даље и ослободила појам функције ограничења 
везаних за домен и кодомен.

 

background image

50 

5 . 1 .

 

Н А Ч И Н И   З А Д А В А Њ А   Ф У Н К Ц И Ј А

 

 

 

Задавање функције аналитичким изразом.

 

Аналитички израз може бити експлицитног облика 

 

y

f x

или 

имплицитног облика 

,

0

F x y

 

Таблични начин задавања функције.

 

 

Задавање функције њеним графиком.

 

 

Задавање функције помоћу параметара.

 

 

Пример

:  Код  функција  на  коначним  скуповима  користимо  следеће 

записе 

 

Ако  су  дати  скупови 

, ,

A

a b c

 

и 

 

1, 2

B

онда  једна  функција  је 

1

2 1

a

b

c

f

 

 

или 

записана 

коришењем 

уређених 

парова 

 

 

,1 ,

, 2 ,

,1

f

a

b

c

 

 

Релација 

,1

f

b

 

није  функција,  јер  би  се  елемент 

b

 

пресликавао у два различита елемента 1 и 2.

 

 

Дефиниција:

 

Песликавање 

2

:

f

A

A

, називамо 

бинарном операцијом

 

Познате бинарне операције су сабирање, одузимање, множење и сл.

 

 

Напомена:

 

Представљање  функције  графиком  или  табелом  углавном 

се користи у применама математике.

 

51 

5 . 2 .

 

Р Е А Л Н Е   Ф У Н К Ц И Ј Е   Ј Е Д Н Е  

П Р О М Е Н Љ И В Е

 

 

Под 

реалном  функцијом

 

подразумева  се  свако  пресликавање 

:

x

f D

,  тј

за  свако 

x

x

D

 

постоји  једна  и  само  једна  реална 

вредност функције 

 

f x

5 . 3 .

 

И Н В Е Р З Н А   Ф У Н К Ц И Ј А

 

 

Нека  је 

:

f A

B

 

бијективно  пресликавање  (

“1 1

” 

и 

на

),  тада 

постоји  јединствена  функција 

1

:

f

B

A

 

коју  називамо 

инверзно 

пресликавање

 

или 

инверзна функција

 

таква да је 

 

 

 

1

f

f x

x

 

 

За  дату  функцију 

:

f A

B

 

може  да  постоји  само  једна  инверзна 

функција 

1

:

f

B

A

 

Пример: 

Одредити инверзну функцију функције 

 

2

1

f x

x

 

Прво треба доказати да је пресликавање бијекција. 

 

Ако  је  испуњено

 

 

 

1

2

1

2

1

2

,

x x

x

x

f x

f x

 

пресликавање 

је 

“1 1

. Изрази који у себи садрже неједнакости се тешко доказују и 

једноставније  је  користити  контрапозицију  предходног  израза  која 
гласи 

 

 

1

2

1

2

f x

f x

x

x

.  Дакле 

1

2

1

2

2

1

2

1

x

x

x

x

 

 

,  чиме 

смо доказали да је

 

пресликавање 

“1 1

”. 

Да бисмо доказали да је прескикавање 

на

” 

решимо полазну једначину 

по 

y

. Добићемо израз 

1

1

2

2

x

y

. Онда 

1

1

,

2

2

y

x

x

y

 

 

 

и закључујемо да је пресликавање 

на

”. 

Пошто  је  пресликавање 

“1 1

” 

и 

на

,  односно  бијекција,  постоји 

инверзно пресликавање 

1

f

Заменом  вредности 

x

 

и 

y

 

у  изразу 

1

1

2

2

x

y

 

добијамо 

 

1

1

1

2

2

f

x

y

x

Графици функција 

f

 

и 

1

f

 

су симетрични у односу на праву 

y

x

background image

53 

 

Пример

Ако  су  дати  скупови 

1, 2, 3

A

, ,

B

a b c

 

и 

5, 6, 7

C

,  а 

:

f A

B

 

и 

:

g B

C

,где је 

1

2

3

f

a

b

c

 

 

и 

7

6

5

a

b

c

g

 

Тада је 

:

g

f A

C

 

и 

1

2

3

7

6

5

g

f

 

 

Пример

Нека су функције задате формулама 

 

2

1

f x

x

 

и 

 

2

1

g x

x

x

 

Тада је:

 

 

 

 

 

 

 

 

 

 

2

2

2

2

2

2

2

2

4

3

2

2

1

2

1

1

4

6

3,

2

1

1

2

2

2,

1

1

1

2

4

3

3,

2 2

1

1

4

3.

g

f x

g f x

x

x

x

x

f

g x

f g x

x

x

x

x

g g x

g

x

x

x

x

x

x

x

x

x

f

f x

f x

x

x

 

 

 

 

 

 

 

 

 

П И Т А Њ А   И   З А Д А Ц И   З А   П Р О В Е Р У   З Н А Њ А

 

 

1.

 

Појам функције

.

 

2.

 

Инверзна функција

.

 

3.

 

Слагање

 

пресликавања

.

 

4.

 

Нека су функције задате формулама

 

 

2

1

f x

x

 

и 

 

2

3

g x

x

Наћи 

 

f

g x

 

g

f x

 

f

f x

 

и 

 

g g x

.

 

 

К Љ У Ч Н

E  

Р Е Ч И

 

 

Функција

 

Домен

 

Кодомен

 

Инјекција (пресликавање „1

-1“) 

Сурјекција (пресликавање „на“)

 

Бијекција (пресликавање „1

-

1“ и „на“)

 

Инверзна функција

 

Слагање функција

 

Сложена функција

 

54 

6 .

 

О С Н О В Е  

К О М Б И Н А Т О Р И К Е

 

 

Ц И Љ Е В И

 

У Ч Е Њ А

 

 

Када

 

ово поглавље савладате

 

требало би

 

да

 

знате

 

1.

 

технике пребројавања,

 

2.

 

појам пермутација са и без понављања,

 

3.

 

појам варијација са и без понављања,

 

4.

 

појам

 

комбинација са и без понављања

 

6 . 1 .

 

П Р И Н Ц И П И   П Р Е Б Р О Ј А В А Њ А

 

Предмет

 

комбинаторике

 

је

 

распоређивање  елемената  у  коначним 

скуповима

 

и  одређивање  броја

 

таквих

 

распореда

Проучавање

 

ове

 

области

 

почело

 

је

 

у

  17. 

веку

упоредо

 

са

 

настанком

 

теорије

 

вероватноће, када су се прва питања из ове области појавила у вези са 
играма на срећу.

 

 

Пребројавања 

представљају 

важан 

део 

комбинаторике. 

Различите 

скупове 

морамо 

пребројавати 

у 

циљу 

решавања 

најразличитијих  проблема.  Некада  су  то  проблеми  одређивања 
троцифрених  бројева  формираних  од  задатих  цифара,  или  број 
различитих 

телефонских 

бројева, 

до 

одређивања 

сложености 

алгоритама или утврђивања вероватноћа случајних догађаја.

 

 

Пример: 

 

Дат

 

је  скуп 

1, 2, 3

Колико  има  троцифрених  бројева  који  почињу 

цифром 2

Са задатим цифрама можемо да формирама само 2 броја који почињу 
цифром 2,

 

а то су

  213  

и 

231 . 

 

Пребројавања  да  се  врше  у  коначним  или  пребројивим  скуповима  и 
зато су они предмет проучавања дискретне математике.

 

 

background image

56 

 

Пример:

 

Дат

 

је

 

скуп

 

1

2

3

,

,

A

a a a

.  Колико  има  пермутација  елемената 

овога скупа

а да се елементи не понављају

 

Има их шест.

 

То су

1 2

3

a a a

 

1 3

2

a a a

 

2 1 3

a a a

 

2

3 1

a a a

 

3 1 2

a a a

 

и 

3

2 1

a a a

 

 

3

3

2

3 2! 3 2 1

6

P

P

 

 

   

 

 

Пример:

 

Дат

 

је

 

скуп

 

1

2

3

4

,

,

,

A

a a a a

.  Колико  има  пермутација  елемената 

овога скупа

 

, а да се елементи не понављају

 ? 

 

Има их 

24

То су

1 2

3

4

1 2

4

3

1 3

2

4

1 3

4

2

1 4

2

3

1 4

3

2

a a a a

a a a a

a a a a

a a a a

a a a a

a a a a

 

2 1 3

4

2 1 4

3

2

3 1 4

2

3

4 1

2

4 1 3

2

4

3 1

a a a a

a a a a

a a a a

a a a a

a a a a

a a a a

 

3 1 2

4

3 1 4

2

3

2 1 4

3

2

4 1

3

4 1 2

3

4

2 1

a a a a

a a a a

a a a a

a a a a

a a a a

a a a a

 

4 1 2

3

4 1 3

2

4

2 1 3

4

2

3 1

4

3 1 2

4

3

2 1

a a a a

a a a a

a a a a

a a a a

a a a a

a a a a

 

 

4

4

3

4 3!

4 6

24

P

P

 

 

  

 

Пример:

 

На колико начина се могу распоредити 6 различитих књига на 
полицу? 

 

6

6! 6 5 4 3 2 1

720

P

      

 

Пример:

 

Пчела треба да скупи полен са 7 различитих цветова. Када узме 
полен са цвета она се на њега више не враћа. На колико начина 
пчела може да обиђе свих 7 цветова?

 

 

7

7! 7 6 5 4 3 2 1

5040

P

       

 

Пермутације се често појављују у дефинисању појмова. На пример, 
образац за израчунавање детерминанти, користе се код алгоритама 
за сортирање, распоред карата у шпилу, у математичкој естетици и 
слично.

 

57 

6 . 3 .

 

П Е Р М У Т А Ц И Ј Е   С А   П О Н А В Љ А Њ Е М

 

 

Нека  је  дат  скуп 

1

2

,

,

,

n

A

a a

a

Број 

пермутација

 

са

 

понављањем

,

 

скупа  од 

n

 

елемената,  међу  којима  има 

1

2

,

,

,

m

k k

k

 

једнаких износи 

 

 

1

2

1

2

1

,

, ,

3

1

2

1

2

!

!

!

!

m

m

k k

k

m

m

n k

k

k

n

n k

n

P

n

k

k

k

k

k k

k

 

 

 

 

.  

 

Пример

Написати све пермутације елемената 

, ,

a b b

 

Све пермутације елемената 

, ,

a b b

 

су

 

,

,

abb bab bba

 

Пример

Одредити

 

број

 

пермутација

 

елемената 

0, 0, 0,1,1,1,1. 

 

Број

 

пермутација

 

је

 

 

3,4

7

7 3

7!

7 6 5 4!

7

35

3

4

3!4!

3!4!

P

  

  

  

  

 

6 . 4 .

 

В А Р И Ј А Ц И Ј Е

 

Б Е З   П О Н А В Љ А Њ А

 

 

Дефиниција

:

 

Нека је дат скуп 

1

2

,

,

,

n

A

a a

a

Варијација

 

класе

 

од

  k  

елемената

 

је

 

било

 

која

 

k

-

торка

 

 

различитих елемената 

скупа 

A

 

Број

 

варијација

 

износи 

 

 

1

0

1

1

k

n

k

i

V

n i

n n

n k

 

 

Варијације без понављања елемената се могу дефинисати и као број 
свих 

инјективних

 

пресликавања

 

скупа 

A

 

од 

n

 

елемената  у  скуп 

B

 

од 

k

 

елемената,

 

background image

59 

Пример: 

 

Колико

 

има

 

двоцифтрних

 

бројева

 

који се могу написати са цифрама

 

1, 2,3  

и како гласе?

 

 

Има их 

3

2

2

3

9

V

.  

То су

11,12,13, 21, 22, 23, 31,32, 33 . 

 

6 . 6 .

 

К О М Б И Н А Ц И Ј Е   Б Е З   П О Н А В Љ А Њ А

 

 

Нека  је  дат  скуп 

1

2

,

,

,

n

A

a a

a

Комбијација

 

класе

 

од

  k  

елемената

 

је

 

било

 

која

 

k

-

торка

 

 

различитих елемената скупа 

A

 

Број комбинација износи 

 

 

 

1

1

!

!

n

n

k

k

n

n n

n k

V

C

k

k

k

 

 

 

 

 

Израз 

n

k

 
 

 

 

чита

 

се

 

n

 

над 

k

.

 

n

k

 
 

 

 

је

 

број свих поскупова датог скупа 

A

 

који имају 

k

 

елемената

.

 

 

Пример: 

 

Дат

 

је

 

скуп

 

1

2

3

,

,

A

a a a

. Колико има комбинација друге класе 

елемената овога скупа и како гласе

Има их 

3

2

3

3 2

3

2

2!

C

 

 

 

То су

1 2

1 3

2

3

a a

a a

a a

 

Напомена:

 

Основна  разлика  између  пермутација,  варијација  и 

комбинација  је  у  томе  што

 

код  пермутација  користимо  и 

распоређујемо  све  елементе  задатог  скупа,  док  код  варијација  и 
комбибација користимо подскупове задатог скупа. Са друге стране, 
разлика  између  варијација  и  комбинација  је  у  томе  што  је  код 
варијација је битно место елемента у распореду, а код

 

комбинација 

није.

 

60 

 

Пример: 

 

Колико има троцифрених бројева који се могу написати користећи 
цифре

 

1, 2,3 ? 

 

Како је у броју битан распоред цифара, ово су варијације.

 

Има их 

3

2

3 2

6

V

  

 

Пример: 

 

Колико  има  правих  које  се  могу  конструисати  кроз  неколинеарне 
тачке 

, ,

A B C

 

Како сада није битан распоред тачака на правој, ово су 
комбинације.

 

Има их 

3

2

3

3 2

3 2

3

2

2!

2 1

C

 

 

 

.  

То су праве 

AB

,

AC

 

и 

BC

 

6 . 7 .

 

К О М Б И Н А Ц И Ј Е   С А   П О Н А В Љ А Њ Е М  

 

 

Нека је дат скуп 

1

2

,

,

,

n

A

a a

a

.  

Комбијација

 

класе

 

од

  k  

елемената

 

са понављањем 

је

 

 

 

1

n

k

n k

C

k

 

 

 

Пример: 

 

На колико начина

 

се 12 истих лопти може распоредити у 6 

различитих кутија.

 

 

Има их 

12

6

6 12 1

6188

12

C

 
 
 

background image

62 

 

2

4!

24

4

12

2!

2

P

 

8.

 

Колико пермутација од елемената 

, , , , , , , ,

a a a a a b b b c

 

почиње 

 

а

)

 

са 

a

б) 

са 

b

в

са 

c

 ? 
 

Решење

а

 

4,3

8!

8

280

4! 3!

P

,

 

б

 

5,2

8!

8

186

5! 2!

P

в

 

5,3

8!

8

56

5! 3!

P

.

 

 

9.

 

Колико

 

има

 

двоцифтрних

 

бројева

 

који  се  могу  написати  са 

цифрама

 

1, 2,3  ? 

Решење

 

Има их 

3

2

2

3

9

V

.  

То су

11,12,13, 21, 22, 23, 31,32, 33 . 

 

10.

 

Дат је скуп 

1, 2, 3, 4

A

.  

а

)

 

Формирати све двоцифрене бројеве од елемента овог скупа, код 

који се цифре не понављају и одредити њихов број.

 

б

)

 

Формирати  све  двоцифрене  бројеве  од  елемента  овог  скупа  и 

одредити њихов број.

 

 

Решење

а

12,13,14, 21, 23, 24,31,32,34, 41, 42, 43 . 

4

2

4 3 12

V

  

 

б

11,12,13,14, 21, 22, 23, 24,31,32, 33,34, 41, 42, 43, 44  

4

2

2

4

16

V

 

11.

 

На  колико  се  начина  могу  изабрати  четири  особе  на  четири 

различите дужности, од девет пријављених кандидата?

 

63 

 

Решење

9

4

9 8 7 6

3024

V

    

 

12.

 

У кампањи за изборе председнички кандидат мора да обиђе 7 од 

15 градова у Србији. Да би постигао што бољи резултат он кампању 
мора  да  заврши  у  Београду.  На  колико  различитих  начина  он  то 
моше учинити?

 

Решење

14

6

14 13 12 11 10 9

2162160

V

 

 
13.

 

Колико се различитих четвороцифрених бројева може 

формирати од десет различитих цифара

?

 

 

Решење

а

)

 

Ако се цифре

 

у броју

 

не понављају, бројева има 

10

9

4

3

10 9 8 7 6 9 8 7

5040 504

4536

V

V

       

 

б

)

 

Ако се цифре у броју понављају,

 

бројева има 

10

10

4

3

4

3

10

10

9000

V

V

 

 

14.

 

Колико  се  различитих  петоцифрених  бројева  може  формирати 

од  цифара 

0,1,3,5, 7, 9

,  ако  се  нула  не  налази  ни  на  првом  ни  на 

последњем месту и ако се цифре не понављају ?

 

 

Решење

5

4

2

480

V

 
15.

 

На тикету спортске прогнозе има 

12

 

сусрета. Колико 

попуњених колона обезбеђује 

12

 

тачних погодака?

 

 

Решење

3

12

12

3

531441

V

  

16.

 

Да

 

ли

 

се

 

међу бројевима 

10

1, 2,

,10

, има више оних који садрже 

цифру 9 или оних који је не садрже?

 

 

Решење

background image

65 

1

k

n

n

 

18.

 

Колико у граду има телефона са петоцифреним бројевима:

 

а)

 

ако су све цифре различите,

 

б)

 

ако се цифре понављају.

 

 

Решење

10

10

5

5

,

V

V

 

19.

 

На школској забави налази се 22 девојака и 15 младића. На  
акојико начина је могуће од њих изабрати 4 пара за плес?

 

 

Решење

:

 

12

15

4

4

C

C

 

20.

 

На колико начина се секу 18 правих, од којих су 5 паралелне, 6 
се секу у једној тачки, а 4 у другој.

 

 

Решење

:

 

 

18

5

6

4

2

2

2

2

1

1

124

C

C

C

C

 

21.

 

Кошаркашки тим сачињавају 5 бекова, 4 центра и 3 крила. На 
колико начина се може саставити петорка ако у њој морају да 
играју бар 2 бека и бар један центар?

 

 

Решење

:

 

5

4

3

5

4

5

4

3

5

4

3

5

4

5

4

2

2

1

2

3

2

1

2

3

1

1

3

2

4

1

540

C C C

C C

C C C

C C C

C C

C C

 

22.

 

На  једном  шаховском  тутниру  одиграно  је  210  партија. 
Одредити  број  учесника,  ако  се  зна  да  је  сваки  учесник 
одиграо партију са сваким?

 

Решење

:

  21 . 

23.

 

Дате  су  цифре 

0, 0, 0, 0,1,1,1

.  Колико  има  пермутација  од  ових 

елемената?

 

Решење

:  

 

4,3

7!

7

35

4!3!

P

24.

 

Која је по реду пермутација 

0101010  

од основне 

0000111 . 

Решење

:  

Са 0 почиње првих 

6!

20

3!3!

, и тражена пермутација је међу њима.

 

66 

Са 01 почиње првих 

5!

10

3!2!

,  

Са 010 почиње такође  првих 

5!

10

3!2!

,  

Са 0101 почиње наредних  

3!

3

2!

, а и са 01010 .

 

Значи 14

-

та пермутација гласи 0101001, 15

-

та гласи 0101010.

 

25.

 

Како гласи 15

-

та пермутација од основне 

0000111 ? 

Решење

:  

6!

14 :

14 : 20

3!3!

, није дељиво, дакле прва цифра је 0.

 

 

5!

14 :

14 :10

1 4

2!3!

, дакле прескочити  нулу и следећа цифра је 

1. 

4!

4 :

4 : 6

2!2!

, није дељиво, дакле наредна цифра је 0.

 

 

3!

4 :

4 : 3 1 1

2!

, дакле прескочити нулу и следећа цифра је 1.

 

1: 2! , 

није дељиво, дакле наредна цифра је 0.

 

 

1:1 1 0

, дакле прескочити нулу и следећа цифра је 1.

 

 

15-

та гласи 0101010.

 

 

26.

 

Која је по реду пермутација ТАБЛА од основне ААБЛТ.

 

Решење

50. 

К Љ У Ч Н

E  

Р Е Ч И

 

Пребројавање

 

Факторијел

 

Пермутације

 

Варијације

 

Комбинације

 

 

background image

68 

6

6

4

2

2

4

6

6

4

2

2

4

6

6

6

6

6

6

1

1

1

1

1

2

3

4

5

15

6

1

6

15

20

.

x

x

x

x

x

x

x

x

x

x

x

x

x

x

 

 

   

 

 

 

   

 

 

 

   

 

 

 

Пример: 

 

Одредити пети члан у развијеном облику бинома 

12

2

1

3

2

x

x

4

12 4

2

20

1

3

3

2

5

12

495

4

T

x

x

x

 

 

 

Пример: 

 

Доказати

 

2

0

1

2

n

n

n

n

n

n

     

 

     

 

     

 

.

 

 

Ако

 

у

 

биномној

 

формули

 

ставимо

 

да

 

је

 

1

a

 

и

 

1

b

 

добићемо

 

тражену

 

везу

.

 

 

Пример: 

 

Доказати

 

0

2

4

1

3

n

n

n

n

n

     

   

     

   

     

   

 

Ако

 

у

 

биномној

 

формули

 

ставимо

 

да

 

је

 

1

a

 

и

 

1

b

 

 

добићемо

 

тражену

 

везу

.

 

 

П И Т А Њ А   И   З А Д А Ц И

 

З А   П Р О В Е Р У   З Н А Њ А

 

 

1.

 

Колико је 

0

n

 
 

 

2.

 

Колико је 

n

n

 
 

 

3.

 

Одредити члан који у развијеном облику бинома не садржи 

x

 

12

2

x

x

 

Решење

69 

 

12

2

12

2

12 3

1

12

12

12

12 3

0

4

k

k

k

k

k

k

T

x

x

x

x

x

k

k

k

k

k

 

 

Тражени члан је 

 

0

4 1

5

12

12 11 10 9

495

4

1 2 3 4

T

T

x

  

 

 

4.

 

Одредити

 

члан

 

који

 

у

 

развијеном

 

облику

 

бинома

 

11

1

1

3

2

x

x

 

има

 

x

 

на

 

пети

 

степен

 

Решење

11

1

11

22

1

3

3

6

2

2

1

11

11

11

22

5

8.

6

k

k

k

k

k

k

T

x

x

x

x

x

k

k

k

k

k

 

значи тражени члан је девети, тј 

5

5

5

5

9

8 1

11

11

11 10 9

165

8

3

3 2 1

T

T

x

x

x

x

 

 

5.

 

Одредити тринаести члан у развијеном облику бинома 

1

9

3

n

x

x

ако је

 

биномни коефицијент трећег члана 

105. 

 

Решење

Биномни

 

коефицијент

 

трећег члана износи

 

2

1

105

105

210

0

15 ,

14

2

1 2

n

n n

n

n

n

n

 

 

 

 

 

Како 

n

 

мора да буде позитиван број

 

узимамо само да је 

15

n

Тражени бином гласи 

15

1

9

3

x

x

, а члан

 

background image

71 

 

6.

 

Ако

 

су

 X 

и

 Y 

коначни скупови, колико има свих пресликавања 

из X у Y?

 

 

Решење

 

Нека

 

је

 

1

2

,

,

,

m

X

x x

x

 

и

 

Y

n

Функција

 

:

f X

Y

 

је

 

одређена

 

m

-

торком

 

 

 

 

1

2

,

,

,

m

f x

f x

f x

Како

 

је

 

 

1, 2,

,

i

f x

Y i

m

тада

 

је

 

број

 

ових

 

m

-

торком је 

m

n

 

7.

 

Колико

 

се

 

бинарних

 

релација

 

може

 

дефинисати

 

у

 

скупу

 

од

 

n

 

елемената

?  

 

Решење

Како  је  бинарна  релација  у  скупу  X  по  дефиницији  сваки 
подскуп  Декартовог  производа 

2

X

 

и

 

како

 

је

 

2

2

X

n

број

 

бинарних

 

релација

 

износи

 

2

2

n

 

8.

 

Одредити x у изразу 

3

3

1

2

3

x

, ако је однос седмог члана од 

почетка, према седмом члану од краја 1:6.

 

 

Решење

9

x

 

 

9.

 

Дат  је  бином 

1

1

2

2

n

x

x

,  одредити  н  тако  да  је  збир 

биномних коефицијената последња три члана 22. Одредити ону 
вредност  x  за  коју  је  збир  трећег  и  петог  члана  датог  бинома 

135. 

 

Решење

:

 

16,

1

2

n

x

x

  

 

10.

 

Одредити све рационалне чланоце у развијеном облику бинома  

10

2

3

 

Решење

:

 

32, 2160,15120, 22860, 7292, 243 . 

72 

 

11.

 

Коефицијенти четвртог и шестог члана у развијеном облику 

бинома 

1

n

x

x

 

односе се као 5:18. одредити члан који не 

зависи од x.

 

 

Решење

:

 

9

12,

8,

495

n

k

T

 

К Љ У Ч Н Е   Р Е Ч И

 

Биномни коефицијенти

 

Биномна формула

 

Општи члан биномне формуле

 

background image

74 

 
 
Prvi problem i njegovo rešenje, teorije grafova jeste rad 

Leonarda Ojlera

  

(Leonhard  Paul  Euler,1707-1783)  pod  nazivom 

Sedam  mostova 

Kenigsberga

, objavljen 1736 godine. Kasnije, Frensis Gutri 1852. godine je 

izložio 

problem  četiri  boje

 

koji  postavlja  pitanje  da  li  je  moguće  obojiti 

zemlje  na  geografskoj  karti  sa  samo  četiri

  boje,  a  da  se  ne  pojave  dve 

susedne  zemlje  obojene  istom  bojom.  Ovaj  problem  su  rešili  tek  1976. 
godine  Kenet  Apel  i  Volfgang  Heken,  ali  se  postavljanje  ovog  problema 

smatra rođenjem teorije grafova. Tokom pokušaja rešavanja ovog problema 

otkrivene  su  mnoge  teoreme  i  postavljeni  mnogi  teoretski  pojmovi  i 
koncepti. 
 
 

8 . 1 .

 

О С Н О В Н И   П О Ј М О В И

 

Граф

 

је апстрактни математички објекат.

 

Неформално говорећи, графови су састављени од тачака, односно 

чворова

 

(врхова) и линија међу њима, односно 

грана

 

 

Скуп чворова убудуће

 

ћемо обележавати са 

V

, а скуп грана са

 

Е

Граф је задат

 

ако су позната два скупа, скуп чворова V

 

и скуп грана Е.

 

 

75 

 

 

Дефиниција

Граф

 

,

G

V E

 

је уређени пар који се састоји од скупа чворова 

V

 

и 

скупа грана  

2

V

E

  

.  

Веома је честа употреба графова за опис модела или структура 
података.

 

Пример

 

Структура  једне  веб  презентације  се  може  представити  сликовито 
употребом  графа.  Чворови  тог  графа  су  поједине  странице

а  гране 

графа су везе којима се

 

може са једне странице прелазити на другу.

 

 

Чворови могу бити градови, а гране путеви између њих.

 

Чворови могу бити рачунари, а начини комуникација између њих 
гране.

 

 

Пример

a)

 

Дат

 

је скуп 

,

V

a b

 

и 

,

E

a b

b)

 

Дат

 

је скуп 

, ,

V

a b c

 

и 

 

,

,

,

E

a b

b c

c)

 

 

Дат

 

је скуп 

, , ,

V

a b c d

 

и 

 

 

 

,

,

,

,

,

,

,

E

a b

b c

a d

c d

background image

77 

Напомена: 

Прост

 

граф је уствари непријентисани

 

пут

 

без

 

петљи

.

 

 

Оријентисани

 

граф

 

или 

диграф

 

,

G

V E

 

је уређем скуп парова 

чворова и грана где је 

E

V V

. Значи он има оријентацију, грана 

,

v

a b

 

има почетни чвор у а и крајњи у 

b

.

 

Пример

:  

Диграф који садржи скуп 

, , ,

V

a b c d

 

и скуп 

 

 

 

 

 

,

,

,

,

,

,

,

,

,

,

,

E

a b

a c

b c

b d

c d

d a

 

 

 

Пример

:  

Диграф који садржи скуп 

, , ,

V

a b c d

 

и скуп 

 

 

 

 

 

 

 

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

E

a a

a b

b c

c c

b d

d b

c d

d a

 

 

 

78 

 

Мултиграф

 

је граф код кога између два чвора а и б постоји више 

од једне гране, које полазе из а, и завршавају у б.

 

 

Комплетан

 

или 

потпун

 

граф

 

је онај граф код кога су свака два 

чвора повезана граном.

 

 

 

Пут

 

је низ грана које су међусобно повезане.

 

 

 

Елементарни

 

пут

 

је пут који кроз сваки чвор графа пролази 

највише једанпут.

 

 

Циклус

 

је

 

граф

 

који се добија од пута, додавањем гране која спаја 

крајеве пута. Циклус се често назива и 

контуром

.

 

background image

80 

 

Граф

 

је

 

регуларан

 

ако су сви чворови истог степена.

 

Пример

Регуларан граф (сви чворови су степена 2).

 

 

 

Теорема

Сума степена

 

у

 

свих чворова, у неоријентисаном графу, увек је паран 

број.

 

Доказ

Ако

 

су

 

1

2

,

,

,

n

d d

d

 

степени чворова 

1

2

,

,

,

n

x x

x

 

у графу која 

има н грана. Ако саберемо све степене чворова добијамо двоструки 
број грана., јер свака грана има као крајње тачке 2 чвора. Дакле 

1

2

2

n

d

d

d

m

.

 

 

Теорема 2:

 

Број

 

чворова

 

непарног

 

степена

 

у произвољном графу

 

без

 

петљи,

 

је

 

паран

 

 

81 

Последња теорема зове се у литератури и Лема о руковању.

 

У сваком друштву број особа које су се руковале непаран број пута је 
паран.  Овде    број  особа    које  су  се  руковале  представљају  чворове 
графа.

 

 

Граф  који  има  коначан  број  чворова  се  зове 

коначан

 

граф

.

 

Аналогно, граф са бесконачним бројем чворова се

 

зове 

бесконачан

 

граф

.

 

 

Граф  G

'=(V

',Е')  је 

подграф

 

графа  G=(V,  Е)  ако  је

 

скуп  његових 

чворова  (V

'

)  подскуп  скупа  чворова  графа  G  (V),  а  скуп  његових 

грана (Е') је подскуп скупа грана G

 

(Е). 

 

П И Т А Њ А   И   З А Д А Ц И   З А   П Р О В Е Р У   З Н А Њ А

 

 

1.

 

Шта

 

су

 

карактеристике

 

графа

2.

 

Шта

 

су

 

бипаритивни

а

 

шта

 

комплетни

 

бипартитивни

 

графови

3.

 

Дефинисати

 

степен

 

чвора

 

и

 

став

 

о

 

вези

 

између

 

чворова

 

и

 

грана

 

К Љ У Ч Н Е   Р Е Ч И

 

 

граф

 

грана

 

чвор

 

петља

 

мултиграф

 

комплетан

 

граг

 

степен

 

чвора

 

пут

 

циклус

 

диграф

 

подграф

 

бипартитиван

 

планаран

 

 

background image

83 

Матрица

 

суседства

 

је

 

најчешћа

 

матрична

 

интерпретација

 

графова. Матрица суседства,  је матрица која на позицији пресека 

i

-

те 

врсте  и 

j

-

те  колоне  садржи  1,  ако  је 

i

  - 

ти  чвор  спојен  са 

j

  - 

тим 

чвором, иначе је 0. 

 

 

Дефиниција

Матрица

 

суседства

 

графа

 

,

G

V E

 

је

 

квадратна

 

матрица

 

V V

,  за 

коју важи 

 

1,

,

,

0,

,

.

u v

E

A

u v

E

 

 

 

Матрица суседства неорјентисаног графа  је квадратна матрица, 

симетрична у односу на главну дијагоналу.

 

 

Пример

Графу

 

на

 

слици

 

одговара

 

матрица

 

суседства

 

 

 

0

1

1

1

1

0

1

0

1

1

0

1

1

0

1

0

a

b

c

d

a

b

c

d

 

 

Како ознаке чворова у већини случајева нису важне, матрице се 

пишу без ознака.

 

84 

0

1

1

1

1

0

1

0

1

1

0

1

1

0

1

0

 

Пример

Усмереном (оријентисаном)

 

графу

 

са

 

слике

 

одговара

 

матрица

 

суседства

 

 

0 1

1

1

1

1

0

0

0

a

b

c

a

b

c

 

Матрице суседства захтевју 

2

n

 (

n

 

је

 

број

 

чворова

меморијских 

јединица, без обзира колики је број грана у графу.

 

Значи користе доста 

меморијског  простора  и  веома  су  непрактичне

 

за

 

графове

 

са

 

малим

 

бројем

 

грана

 

што

 

је у пракси чест случај. 

 

 

Са  друге  стране  оне  могу  да  се  користе

 

и

 

за  графове,  и 

мултиграфове (диграфове). Тада

на

 

позицију

 

пресека

 

i

-

те

 

врсте

 

и

 

ј

-

те

 

колоне

 

треба

 

ставити

 

број

 

грана

 

које

 

спајају

 

и

-

ти

 

чвор

 

са

 

ј

-

тим

 

чвором

У

 

случају

 

да

 

је

 

граф

 

неоријентисан

 

скоро

  50% 

мемориских

 

јединица

 

можемо

 

уштедети

 

ако

 

се

 

памте

 

само

 

елементи

 

испод

 

или

 

изнад

 

главне

 

дијагонале

,

 

зато

 

што

 

је

 

матрица

 

симетрична

 

Међутим  како  је  једноставно  написати  програме  у  којима  се 

користе матрице ово је данас најзаступљенији начин за представљање

 

background image

86 

 

 

1

2

3

4

5

1

1

1

0

0

1

0

0

0

0

0

0

1

1

0

0

0

0

1

1

e

e

e

e

e

a

b

c

d

 

 

Матрице  суседства  и  инциденције  имају  особину  да  њихови  степени 
дају  информацију  о  суседству  чворова  и  шетњама  произвољних 
дужина. 

 

 

Теорема

Ако

 

је

 

А

 

матрица

 

графа

 

G

,

 

 

0

k

где

 

су

  ,

u v

чворови

онда 

елемент 

,

k

u v

A

 

једнак броју шетњи дужине 

k

 

од 

u

 

до 

v

.

 

 

Шетња дужине 0 састоји се само од једног чвора.

 

0

0

0

1,

,

,

,

0,

u

v

w u v

A

I

w u v

u

v

 

Ово је један од начина да се одреди растојање између чворова.

 

 

Пример

Уочимо

 

матрицу

 

2

1

0

0

1

1

0

0

1

1

0

1

0

1

0 1

0

0

0

0

1

0

0

0

1

1

1

1

0

1

1

1

0

A

 

87 

Уочимо

 

на

 

пример

 

да

 

је

  

 

 

 

 

 

 

2

12

11

12

12

22

13

32

14

42

1 0

0

0

0

0

1 1

0

0

0 1 1.

a

a

a

a

a

a

a

a

a

    

 

Како

 

је

 

2

12

1

a

 

и

 

пошто

 

су

 

14

42

1,

1

a

a

постоји

 

грана

 

од

 

чвора

 1 

до

 

чвора

 4 

и

 

на

 

исти

 

начин

 

од

 

чвора

 4 

до

 

чвора

 2. 

На

 

основу

 

тога

 

постоји

 

пут

 

дужине

  2 

од

 

чвора

  1 

до

 

чвора

  2. 

Тада  можемо  закључити  да  ја

 

2

1

ij

A

 

ако

 

постоји

 

пут

 

дужине

 2 

од чвора и

 

до

 

чвора

 

ј

Али за 

 

 

 

 

 

 

 

2

34

31

14

32

24

33

34

34

44

0 1

0

0

0 1

1 0

0

0

0

0

0

a

a

a

a

a

a

a

a

a

    

 

 

И

 

закључујемо

 

да

 

не

 

постоји

 

пут

 

дужине

 2 

од

 

чвора

 3 

до

 

чвора

 4. 

 

П И Т А Њ А   И   З А Д А Ц И   З А   П Р О В Е Р У   З Н А Њ А

 

 
1.

 

Шта је матрица суседства?

 

2.

 

Шта је матрица инциденције?

 

3.

 

Која

 

је

 

разлика

 

између

 

матрице

 

инциденције

 

и

 

матрице

 

суседства

4.

 

За дати граф

 

 

 

написати матрицу суседства.

 

К Љ У Ч Н Е

 

Р Е Ч И

 

Шетња по графу

 

Матрица суседства

 

Матрица инциденције

 

background image

 

89

 
 

 

Стабло

 

је

 

повезан

 

граф

 

са

 

в

 

чворова

 

и

 

е

=

v

-1 

грана

 

Стабло

 

је

 

граф

 

са

 

v

 

чворова

 

и

 

е

=

v

-1 

грана

 

и

 

без

 

контура

.

 

 

Стабло

 

је

 

минимално

 

повезан

 

граф

.

 

 

Стабло

 

је

 

максималан

 

граф

  

без

 

контура

.

 

 

Стабло

 

садржи

 

бар

 

два

 

чвора

 

степена

 1.

 

 

За

 

сваки

 

пар

 

чворова

 

у

,

в

 

постоји

 

тачно

 

један

 

пут

 

који

 

их

 

повезује

.

 

 

 

 

Дефиниција

Шума

 

је

 

граф

 

коме

 

су

 

компоненте

 

стабла

 

 

Пример

Граф

 

на

 

следећој

 

слици

 

није

 

стабло

 

јер

 

садржи

 

циклус

 

90

 

 

Породична

 

стабла

 

су

 

је

 

једна

 

врста

 

стабла

Организациона

 

структура

 

фирме

 

су

 

такође

 

врста

 

стабала

 

Дефиниција

Усмерено

 

стабло

 

представља

 

усмерени

 

граф

 

без

 

петљи

 

и

 

чији

 

је

 

носећи

 

граф

 

стабло

такво

 

да

 

ако

 

постоји

 

пут

 

од

 

чвора

 

а

 

до

 

чвора

 

б

а

 

тај

 

пут

 

је

 

јединствен

 

Чвор

 

на

 

врху

 

стабла

 

назива

 

се

 

кореном

 

Дефиниција

Стабло

 

у

 

коме

 

је

 

један

 

чвор

 

посебно

 

означен

 

назива

 

се

 

корено

 

стабло

Означени

 

чвор

 

назива

 

се

 

корен

 

стабла

.

 

 

 

 

Коренско

 

стабло

 

може

 

да

 

буде

 

и

 

оријентисано

.

 

Гране

 

се

 

оријентишу

 

од

 

чворова

 

мањих

 

нивоа

ка

 

чворовима

 

виших

 

нивоа

Улазни

 

степен

 

корена

 

је

  0, 

док

 

је

 

улазни

 

степен

 

осталих

 

чворова

 

у

 

коренском

 

стаблу

 

једнак

 1. 

background image

 

92

 

 

У

 

бинарном

 

стаблу

 

сваки

 

отац

 

има

 

тачно

  2 

сина

 

и

 

свако

 

дете

 

се

 

посматра

 

као

 

лево

 

или

 

десно

 

дете

 

 

Ако

 

су

 

у

 

бинарном

 

стаблу

 

завршни

 

чворови

 

сви

 

истог

 

нивоа

бинарно

 

стабло

 

се

 

назива

 

потпуно

 

 

На

 

нивоу

 

к

 

постоји

 

тачно

 

2

k

 

чворова

 

 

Ако

 

потпуно

 

бинарно

 

стабло

 

има

 

поред

 

нивоа

 0 

још

 

k  

нивоа

тада

 

је

 

број

 

чворова

 

n

 

у

 

стаблу

 

једнак

  

2

1

1 2 2

2

2

1

k

k

n

  

 

Број

 

завршних

 

чворова

 (

листова

је

 

1

2

2

k

n

а

 

осталих

 

1

2

1

2

k

n

 

 

Пример

Исказна

 

формула

 

 

p

q

q

r

p

q

 

 

може

 

се

 

представити

 

стаблом

 

 

 

93

 

Сваком

 

појављивању

 

исказног

 

слова

 

у

 

формули

 

одговара

 

у

 

стаблу

 

један

 

чвор

 

степена

 1. 

осталим

 

чворовима

 

одговарају

 

вредности

 

које

 

се

 

добијају

 

применом

 

подформуле

 
 

1 0 . 1 .

 

Б И Н А Р Н А

 

С Т А Б Л А

 

П Р Е Т Р А Г Е

 

 

Бинарна

 

стабла

 

представљају

 

одличну

 

методу

 

за

 

уређивање

 

података

тако

 

да

 

се

 

сваки

 

податак

 

може

 

лако

 

пронаћи

 

или

 

утврдити

 

шта

 

недостаје

Из

 

тих

 

разлога

 

мора

 

да

 

постоји

 

неко

 

уређење

нумеричко

 

или

 

алфабетско

.  

 

Пример

Претпоставимо

 

да

 

желимо

 

да

 

поређамо

 

следећа

 

имена

Предраг

Ђорђе

Синиша

Ана

Мартин, Рада, Амела, Уна, Зоран, Мирко.

 

 

Поћи

 

ћемо

 

од

 

имена

 

Предраг

 

које

 

ћемо

 

поставити

 

за

 

корен

 

стабла

Пошто

 

се

 

име

 

Ђорђе

 

налази

 

у

 

низу

 

после

 

њега

а

 

азбучно

 

је

 

испред

 

имена

 

Предраг

он

 

ће

 

постати

 

његово

 

лево

 

дете

 

 

Следеће

 

име

 

је

 

Синиша

које

 

се

 

налази

 

иза

 

имена

 

Предраг

па

 

ће

 

зато

 

постати

 

његово

 

десно

 

дете

background image

 

95

ОЈЛЕРОВ ПУТ

 

 

Швајцарски

 

математичар

 

и

 

физичар

 

Леонард

 

Паул

 

Ојлер

  (1707.-

1783.) 

је

  1735. 

године

 

поставио

 

и

 

решио

 

проблем

 

Седам

 

мостова

 

Кенигсберга

.  

 

 

 

Средином

  1735. 

године

 

је

 

дошао

 

у

 

Пруску

тачније

 

у

 

град

 

Кенинсберг

 

на

 

реци

 

Прегел

Постављено

 

му

 

је

 

питање

од

 

стране

 

становника

да

 

ли

 

се

 

може

 

прећи

 

седам

 

постојећих

 

мостова

 

на

 

тој

 

реци

 

не

 

прелазећи

 

ни

 

један

 

мост

 

два

 

или

 

више

 

пута

Показао

 

је

 

да

 

се

 

тај

 

проблем

 

може

 

представити

 

цртањем

 

затворене

 

мреже

 

у

 

равни

 

у

 

једном

 

потезу

 

не

 

подижући

 

оловку

 

са

 

папира

Свакој  обали  и  острву  је 

придружио чворове графа, а мостови између

 

њих су  били гране.

 

Тако 

је добио један мултиграф. 

 

 

96

 

Утврдио

 

је

 

да

 

је

 

то

 

немогуће

 

урадити

Тако

 

је

 

настала

 

теорема

 

која

 

гласи

Град

 

поседује

 

Ојлеров

 

пут

 

акко

 

има

 

два

 

или

 

ниједан

 

чвор

 

непарног

 

реда

.  

 

Ојлеров

 

пут

 

је

 

пут

 

у

 

неусмереном

 

графу

 

који

 

пролази

 

сваком

 

граном

 

графа

 

тачно

 

једном

Уколико

 

у

 

повезаном

 

графу

 

или

 

мултиграфу

 

имамо

 

два

 

чвора

 

непарног

 

реда

тада

 

у

 

графу

 

постоји

 

Ојлеров

 

пут

У

 

случају

 

да

 

немамо

 

ниједан

 

чвор

 

непарног

 

реда

 

онда

 

у

 

графу

 

постоји

 

Ојлеров

 

циклус

односно

 

Ојлеров

 

пут

 

је

 

затворен

Обиласком

 

графа

 

по

 

Ојлеровом

 

путу

 

се

 

кроз

 

сваки

 

чвор

 

може

 

проћи

 

више

 

пута

Сваки

 

пролаз

 

кроз

 

чвор

 

захтева

 

две

 

путање

ону

 

којом

 

долазимо

 

и

 

ону

 

којом

 

излазимо

 

из

 

чвора

Значи

 

да

 

степен

 

свих

 

чворова

осим

 

полазног

 

и

 

завршног

мора

 

бити

 

паран

 

да

 

би

 

се

 

сматрао

 

Ојлеровим

 

путем

 

Дефиниција

:  

Ојлерова  контура  мултиграфа 

је  затворена  стаза  која  садржи  све 

гране  из 

G

.  Мултиграф  који  има  Ојлерову  контуру  се  назива  Ојлеров 

мултиграф. Ојлеров пут у мултиграфу 

је стаза која садржи све гране 

из 

G

.  Мултиграф  који  садржи  Ојлеров  пут  се  назива  полуојлеров 

мултиграф. 

 

 
26. 

августа

  1735. 

је

 

презентовао

 

свој

 

рад

 

на

 

проблему

 

Седам

 

мостова

 

Кенинсберга

Санг

 

Петерсбургшкој

 

академији

 

наука

 

доказавши

 

да

 

је

 

такав

 

обилазак

 

мостова

 

немогућ

 

уз

 

напомену

 

да

 

се

 

његов

 

метод

 

може

 

проширити

 

на

 

произвољан

 

распоред

 

мостова

 

и

 

острва

У

 

ствари

он

 

је

 

само

 

формулисао

 

потребне

 

и

 

довољне

 

услове

 

да

 

такав

 

обилазак

 

постоји,  али  није  сматрао  да  је  потребно  да  покаже 

довољне  услове  у  општем  случају

Први  потпуно  конкретан  доказ  је 

дао немац Хирхолцер.

 

background image

 

98

Хамилтонов пут

 

 

Енглески

 

математичар

 

сер

 

Вилијам

 

Роуан

 

Хамилтон

  

(1805-1856) 

је

 

саставио

 

занимљиву

 

слагалицу

 

која

 

је

 

корисила

 

ивице

 

регуларног

 

додекаедра

Према

 

њему  је  контура  која  пролази  кроз  све 

чворове  графа  тачно  једном,  тако  да  ни  кроз  једну  грану  не  пролази 
више од једанпут, добила име Хамилтонова контура. 

 

 

 

Хамилтонов

 

пут

 

је

 

пут

 

у

 

неусмереном

 

графу

 

који

 

посећује

 

или

 

пролази

 

кроз

 

сваки

 

чвор

 

тачно

 

једном

То

 

исто

 

важи

 

и

 

за

 

Хамилтонов

 

цикл

То

 

је

 

цикл

 

у

 

неусмереном

 

графу

 

који

 

посећује

 

или

 

пролази

 

кроз

 

сваки

 

чвор

 

тачно

 

једном

Одређивање

 

да

 

ли

 

у

 

неком

 

графу

 

постоји

 

такав

 

пут

 

или

 

циклус

 

је

 

проблем

 

Хамилтоновог

 

пута

 

Дефиниција: 

 

Хамилтонова контура графа G

 

језатворен  пут који садржи све чворове 

из  G.  Граф  који  садржи  Хамилтонову  контуру  назива  се  Хамилтонов 
граф. Хамилтонов пут у графу G

 

је пут који садржи све чворове из G

Граф који садржи Хамилтонов пут назива се полухамилтонов граф. 

 

 

И

 

пре

 

Хамилтона

 

су

 

се

 

сличним

 

проблемима

 

из

 

рекреативне

 

математике

 

бавили

 

разни

 

математичари

Један

 

од

 

најпознатијих

 

таквих

 

проблема

 

је

 

Проблем

 

коњичког

 

скока

Тим проблемом је постављено 

питање да ли је могуће скакачем обићи сва поља шаховске табле, тако 
да  се  свако  поље  обиђе  тачно  једанпут.

 

О

 

том

 

проблему

 

постоји

 

обимна

 

литература

Испитивана

 

је

 

не

 

само

 

егзистенција

 

решења

 

на

 

шаховским

 

таблама

 

различитих

 

димензија

него

 

и

 

начин

 

конструкције

 

и

 

број

 

решења

Доказано

 

је

 

да

 

Проблем

 

коњичког

 

скока

 

има

 

решења

 

на

 

свим

 

правоугаоним

 

таблама

 

димензија

 

м

x

н

 

за

 m,n

3, 

изузев

 

табли

 3x3, 

3x5, 3x6 

и

 4x4. 

 

99

Иако  решење  Хамилтонове  слагалице  и  није  много  тешко 

пронаћи,  математичари  су  и  дан  данас  заокупљени  проблемима 
везаним  за  Хамилтонове  контуре,  попут  оних  који  траже  потребне  и 
довољне  услове  да  би  граф  поседовао  Хамилтонову  контуру  или 
Хамилтонов пут. 

 

 

Постоји

 

још

 

један

 

веома

 

битан

 

проблем

 

са

 

Хамилтоновом

 

контуром

 

а

 

то

 

је

 

Проблем

 

трговачког

 

путника

То

 

је

 

проблем

 

у

 

коме

 

у

 

задатом

 

тежинском

 

графу

 

треба

 

одредити

 

Хамилтомову

 

контуру

 

најмање

 

тежине

тј

ако

 

је

 

дат

 

одређени

 

број

 

градова

 

и

 

цене

 

путовања

 

од

 

било

 

ког

 

града

 

до

 

било

 

ког

 

града

која

 

је

 

најјефтинија

 

рута

 

која

 

обилази

 

сваки

 

град

 

тачно

 

једном

 

и

 

враћа

 

се

 

у

 

почетни

 

град

За

 

решавање

 

се

 

користи

 

метода

 

гранања

 

и

 

олучивања

која

 

се

 

назива

 

и

 

имплицитна

 

енумерација

За

 

разлику

 

од

 

експлицитне

 

енумерације

 

код

 

које

 

користимо

 

све

 

могуће

 

пермутације

 

скупа

 

чворова

овде

 

простор

 

могућих

 

решења

 

делимо

 

на

 

мање

 

делове

 (

гранање

и

 

то

 

више

 

пута

 

при

 

чему

 

се

 

поједини

 

делови

 

простора

 

решења

 

одбацују

 

на

 

основу

 

процене

 

вредности

 

функције

 

која

 

се

 

минимизира

 (

ограничавање

).  

 

Како

 

сам

 

проблем

 

тражења

 

минималне

 

Хамилтонове

 

контуре

 

захтева

 

много

 

времена

 

до

 

данас

 

је

 

пронађено

 

мноштво

 

хеуристика

 

које

 

дају

 

приближно

 

оптимално

 

решење

 

Проблема

 

трговачког

 

путника

 

Решење

 

овог

 

проблема

 

је

 

од

 

великог

 

парктичног

 

значаја

не

 

само

 

у

 

питњу

 

саобраћаја

већ

 

и

 

у

 

раду

 

роботских

 

машина

 

које

 

обрађују

 

матичне

 

плоче

 

рачунара

свемирским

 

истраживањима

 

итд

На пример, 

сателит Росат, који је заједнички пројекат САД, Енглеске и Немачке, у 
периоду од 1990. до 1998. обилазио  је око планете Земље. Он  је ноио 
телескоп  који  је  мерио  количину  X

-

зрачења  које  долази  са  звезда.  Да 

би  уштедели  и  време  и  енергију  коју  троши  телескоп  прибегнуто  је 
комбинаторној  оптимизацији  за  тражење  Хамилтонове  контуре  кроз 
неколико  милиона  звезда.  Тим  поступком  је  посао  обављен  за  дупло 
краће време.

 

 

Међу

 

дефиницијама

 

Ојлерових

 

и

 

Хамилтонових

 

графова

 

постоји

 

велика

 

сличност

 

али

 

је

 

потпуно

 

другачија

 

ситуација

 

када

 

је

 

у

 

питању

 

њихова

 

карактеризација

Ојлерови

 

графови

 

су

 

у

 

потпуности

 

одређени

 

Ојлеровом

 

теоремом

док

 

за

 

Хамилтонове

 

графове

 

тако

 

нешто

 

није

 

познато

Један

 

од

 

највећих

 

нерешених

 

проблема

 

Теорије

 

графова

 

је

 

да

 

се

 

одреди

 

потребан

 

и

 

довољан

 

услов

 

да

 

је

 

граф

 

Хамилтонов

Ојлеров

 

и

 

Хамилтонов

 

граф

 

немају

 

директну

 

везу

background image

 

101

 

Теорема:

 

Граф има Ојлеров пут ако и само ако је повезан и акко садржи 0 или 2 
чвора непараног

 

степена.

 

 

Граф  на  слици  има  прави  Ојлеров  пут  пошто  тачно  два  његова  чвора 
имају непаран степен.

 

 

 

 

Ојлерови  путеви  су  важни  за  организацију  послова  у  великом 

граду,  за  разношење  поште,  наплате  рачуна  и  слично.  Поштар  ће 
најрационалније разнети пошту ако сваку улицу обиђе тачно једанпут.

 

 

Вилијем  Хамилтон  је  1859.године  поставио  проблем  под 

називом пут око света. Циљ

 

је

 

био

 

обићи

 

градове

 

света

 

И

 

вратити

 

се

 

у

 

полазни

Игра  је  користила  ивице  додекаедра  (20)  за  представљање 

дозвољених  путева  између  градова.  Контура  која  пролази  кроз  све 
чворове графа тачно једном (тако да

 

се ни кроз једну грану не пролази 

више од једампут) је Хамилтонова контура. 

 

 

Дефиниција

Хамилтонови

 

графови

Хамилтонова

 

контура

 

или 

циклус

,

 

графа Г јр затворен пут који 

садржи све чворове пута. Граф који има Хамилтонову контуру  зове се 

Хамилтонов

 

граф

.

 

Хамилтонов

 

пут

 

у графу Г је пут који садржи све чворове из Г. Граф 

који има Хамилтонов пут се зове 

полухамилтонов

 

граф

 
 

 

102

Хамилтонов пут у графу је пут који пролази кроз све чворове 

тачно једанпут.

 

 

У  дефиницији  Ојлерових  и  Хамилтонових  графова  постоји 

сличност.  Међутим  Ојлеров  граф  је  у  потпуности  одређен  Ојлеровом 
теоремом,  док  за  хамилтонове  графове  то  није  случај.  Није  решен 
потребан и довољан услов Хамилтоновог графа. 

 

 

П И Т А Њ А   И   З А Д А Ц И   З А   В Е Ж Б У

 

 

1.

 

Шта

 

је

 

стабло

2.

 

Који

 

од

 

следећих

 

графова

 

представљају

 

стабло

 
1) 

 

2) 

 

3) 

 

 

4) 

 

 
 
 

background image

 

104

11.

 

Одредити

 

ниво

 

чвора

  3

v .

 

Одговор

:1 

 

12.

 

Одредити

 

висину

 

стабла

Одговор

:2 

 

13.

 

У

 

случају

  1 

нацртати

 

корено

 

стабло

 

и

 

употребити

 

чвор

  3

v

 

као

 

корен

14.

 

Шта

 

је

 

бинарно

 

стабло

? (

нацртати

 

пример

15.

 

Шта

 

је

 

потпуно

 

бинарно

 

стабло

? (

нацртати

 

пример

16.

 

Како

 

гласи

 

образац

 

за

 

израчунавање

 

броја

 

чворова

 

потпуног

 

бинарног

 

стабла

17.

 

Шта

 

је

 

лист

18.

 

Колико

 

чворова

 

има

 

потпуно

 

бинарно

 

стабло

 

са

 4 

нивоа

Одговор

0

1

2

3

4

5

2

2

2

2

2

2

1 31

n

 

 

19.

 

Колико

 

завршних

 

чворова

 

има

 

потпуно

 

бинарно

 

стабло

 

са

 7 

чворова

Одговор

1

7 1

2

4

2

2

k

n

 

20.

 

Конструисати

 

бинарно

 

стабло

 

које

 

садржи

 

имена

 

дата

 

поређана

 

у

 

азбучном

 

поретку

Ана

Вања

Душан

Миле

Жика

Младен

Предраг

21.

 

Претражи

 

да

 

ли

 

се

 

име

 

Драган

 

налази

 

у

 

стаблу

 

из

 

предходног

 

задатка

22.

 

Конструисати

 

бинарно

 

стабло

 

које

 

садржи

 

бројеве

 

поређана

 

у

 

нумеричком

 

поретку

: 25, 15,27,48,36, 2,44,18, 30,42,11,9,32. 

23.

 

Опишите

 

бинарно

 

стабло

 

које

 

представља

 

најгори

 

могући

 

случај

 

за

 

претраживање

 

24.

 

Која

 

је

 

разлика

 

између

 

Ојлерове

 

и

 

Хамилтонове

 

контуре

 

25.

 

Који граф је приказан на следећој слици?

 

 

105

 

26.

 

Одредити

 

графове

 

који

 

су

 
a)

 

истовремено

 

Ојлерови

 

и

 

Хамилтонови

b)

 

нису

 

Ојлерови

а

 

јесу

 

Хамилтонови

c)

 

јесу

 

Ојлерови

а

 

нису

 

Хамилтонови

d)

 

Нису

 

ни

 

Ојлерови

ни

 

Хамилтонови

Решење

 

 

 

a)

 

Контура

 

3

C

 

је

 

и

 

Ојлеров

 

и

 

Хамилтонов

 

граф

b)

 

Потпуни

 

граф

 

4

K

није

 

Ојлеров

а

 

јесте

 

Хамилтонов

 

граф

c)

 

Потпуни

 

бипартитивни

   

граф

 

2,4

K

је

 

Ојлеров

а

 

није

 

Хамилтонов

 

граф

d)

 

Звезда

 , 

4

K

није

 

Ојлеров

 

и

 

није

 

Хамилтонов

 

граф

 

27.

 

Који

 

од

 

следећих

 

графова

 

имају

 

Ојлерове

 

контуре

односно

 

путеве

?  

 

background image

 

107

29.

 

Нека

 

је

 

дат

 

неусмерен

 

граф

 

,

G

V E

где

 

је

 

скуп

 

чворова

 

0,1, 2, 3, 4, 5, 6

V

скуп

 

грана

 

 

 

 

 

 

 

 

 

 

 

0,1 , 0, 3 , 0, 6 , 1, 4 , 1, 5 , 2, 3 , 2, 4 , 2, 5 , 3, 4 , 3, 5 , 4, 5

E

Да

 

ли

 

је

 

G

 

повезани

 

граф

Ако

 

није

 

навести

 

колико

 

повезаних

 

компоненти

 

има

 

и

 

који

 

чворови

 

припадају

 

тим

 

компонентама

30.

 

Нека

 

је

 

дат

 

неусмерен

 

граф

 

,

G

V E

где

 

је

 

скуп

 

чворова

 

, , , , ,

V

a b c d e f

скуп

 

грана

 

 

 

 

 

 

 

 

 

 

 

 

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

E

a b

a c

a e

a f

b c

b d

b e

c d

c e

c f

d e

e f

Да

 

ли

 

је

 

G

 

повезани

 

граф

Ако

 

није

 

навести

 

колико

 

повезаних

 

компоненти

 

има

 

и

 

који

 

чворови

 

припадају

 

тим

 

компонентама

31.

 

Нека

 

је

 

дат

 

усмерен

 

граф

 

,

G

V E

где

 

је

 

скуп

 

чворова

 

0,1, 2, 3, 4, 5, 6

V

скуп

 

грана

 

 

 

 

 

 

 

 

 

 

 

 

 

0,1 , 0, 3 , 0, 6 , 1, 4 , 1, 5 , 2, 3 , 2, 4 , 2, 5 , 3, 4 , 3, 5 , 4, 0 , 4, 5 , 5,1

E

Одредити

 

чворове

 

који

 

имају

 

највећи

 

улазни

 

и

 

излазни

 

степен

 

и

 

нацртати

 

овај

 

граф

32.

 

Нека

 

је

 

дат

 

неусмерен

 

граф

 

,

G

V E

где

 

је

 

скуп

 

чворова

 

, , , , ,

V

a b c d e f

скуп

 

грана

 

 

 

 

 

 

 

 

 

 

 

 

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

E

a b

a c

a e

a f

b c

b d

b e

c d

c e

c f

d e

e f

Одредити

a)

 

Степен

 

чвора

 

f . 

b)

 

Чвор

 

са

 

максималним

 

степеном

 

чвора

 
 

К Љ У Ч Н Е   Р Е Ч И

 

 

Стабло

 

Шума

 

Корено стабло

 

Бинарно стабло

 

Циклус

 

Ојлеров пут

 

Хамилтонов пут

 

 

108 

1 1 .

 

Т Е О Р И Ј А

 

А Л Г О Р И Т А М А

 

Ц И Љ Е В И

 

У Ч Е Њ А

 

Када

 

ово

 

поглавље

 

савладате требало би да знате да

1.

 

опишете

 

алгоритам

2.

 

особине

 

алгоритама

3.

 

врсте алгоритамских шема.

 

Данас, највећи број задатака човек решава помоћу рачунара. Да би 

се  неки  проблем  тако  могао  решити  процес  решавања  треба 
дефинисати кроз неколико етапа. То

 

су

1.

 

Формулација проблема,

 

2.

 

Математички облик проблема,

 

3.

 

Прављење алгоритама,

 

4.

 

Програмирање,

 

5.

 

Израда тест примера,

 

6.

 

Тестирање проблема,

 

7.

 

Добијање и анализа резултата.

 

1 1 . 1 .

 

А Л Г О Р И Т М И

 

Алгоритам

 

је скуп правила која описују решавање неког проблема.

 

Први алгоритам начинио је персијски математичар 

Al Khowarizmi 

(око 

850.  године)  за  решавање  алгебарских  проблема.  Написао  књигу 

Al 

Khowarizmi 

о

 

индијској

 

вештини

 

рачунања

којом

 

се

 

у

 

математику

 

уводе

 

индијске

 

цифре

 

и

 

децимални

 

бројни

 

систем

Индијске  цифре 

временом  почињу  да  се  називају  арапским  цифрама,  а  од  лошег 
превода  имена  овог  математичара  на  латински,  настаје  појам 
алгоритам.

 

 

background image

110 

Следећи  значајан  напредак  у  формализацији  увођења  алгоритма  у 

математику  и  логику  учинио  је  Алан  Тјуринг,  дефинишући  и 
начинивши  Тјурингову  машину.  То  је  примитиван  аутомат,  уствари, 
мисаона творевина која поседује могућност извођења операција које су 
довољне  за  извођење  скоро  свих  алгоритама.  Његова  машина 
инициарала је теорију коначних аутомата.

 

 

У  новије  време,  појам  алгоритма  се  готово  искључиво  везују  за 

рачунарство,  мада  алгоритми  се  користе  када  једноставно,  у 
појединачним  корацима,  желимо  да  решимо  неки  проблем.  Сваки 
куварски рецепт је један алгоритам.

 

У математици су познати Еуклидов алгоритам за одређивање највећег 
заједничког делиоца два броја, Гаусов алгоритам за решавање система 
линеарних једначина и многи други.

 

 

Теорија алгоритама је самостална област која дефинише апстрактне 

моделе  за  решавање  проблема  независно  од  програмских  језика.

 

Слично  осталим 

математичким 

дисциплинама, 

проучавају 

се 

законитости  и  принципи  алгоритама,  а  не  конкретне  имплементације. 
Алгоритми  се  записују  употребом  псеудокода,  општег  језика  за  опис 
алгоритама.

 

 

1 1 . 2 .

 

Д И Ј А Г Р А М

-  

Б Л О К

 

Ш Е М А

 

Најчешће,  алгоритам  се

 

представља

 

у

 

облику

 

блок

 

шеме

 

са

 

јасно

 

дефинисаним

 

низом

 

радњи 

корак  по  корак.  Графички

 

запис

 

алгоритма

 

назива

 

се

 

алгоритамска

 

шема

.

 

Графички

 

симболи

 

које

 

се

 

користе

 

за

 

прављење алгоритамске шеме су:

  

 

111 

 

 

1 1 . 3 .

 

В Р С Т Е   А Л Г О Р И Т А М С К И Х   Ш Е М А

 

 

Алгоритамске шеме могу се поделити у три категорије:

 

 

1.

 

Линијске

 

алгоритамске

 

шеме

2.

 

Цикличне

 

алгоритамске

 

шеме

3.

 

Сложене

 

алгоритамске

 

шеме

 

background image

113 

Разгранате  линијске  алгоритамске  шеме

,  су  оне  шеме  код  којих  се 

сваки  корак  извршава  тачно  једанпут  и  обавезно  садржи  бар  један 
условни  алгоритамски  корак.  Ако  је  услов  испуњен,  излаз  из 
алгоритамског  корака  биће  означен  са  да,  а  ако  услов  није  испуњен 
излаз ће бити означен са не.

 

 

 

Пример

Саставити 

алгоритам 

за 

рачунање 

вредности 

,

,

a b a

b

Z

a b a

b

 

 

114 

 

 

1 1 . 3 . 2 .

 

Ц И К Л И Ч Н Е

 

А Л Г О Р И Т А М С К Е

 

Ш Е М Е

 

Цикличне

 

алгоритамске

 

шеме

 

су оне шеме у којима се један или 

више алгоритамских корака може извршавати више од

 

једанпут у 

току извршавања алгоритма. Ови кораци чине 

циклус

.

 

Уколико је 

услов  испуњен  излази  се  из  циклуса,  у  супротном  циклус  се 
понавља.  Услов  за  излазак  из  циклуса  зове  се

 

излазни

 

критеријум

 

циклуса

 

background image

116 

 

 

 

117 

Сложене

 

алгоритамске

 

шеме

 

праве 

се 

различитим 

композицијама

 

предходних

 

шема

.

 

 

За

 

решавању

 

једног

 

задатка

 

може  се  састравити  више  алгоритама 

различитих  структура.  За  овакве  алгоритме  каже  се  да  су 

еквивалентни

. 

Међу

 

еквивалентним алгоритмима треба изабрати

 

онај

 

који

 

најефикасније

 

доводи

 

до

 

резултата

Критеријуми  за  избор 

најефикаснијег алгоритма су различити:

 

 

 

Највећа брзина извршавања алгоритма

 

 

Минимално ангажовање меморијског простора

 

 

Што једноставнија структура итд

 

 

1 1 . 4 .

 

О С О Б И Н Е

 

А Л Г О Р И Т А М А

 

 

1.

 

Дискретност

 

алгоритама

Ако

 

посматрамо

 

време

 

извршавања

 

алгоритма

  , 

сваком

 

кораку

 

можемо  придружити 

дискретан временски период у коме се тај

 

корак

 

извршава

.

 

2.

 

Детерминисаност

.

 

Сваки  корак  садржи  улазне  величине,  на 

основу којих се једнозначно добијају излазне величине.

 

3.

 

Елементарност

.

 

Закон  добијања  излазних  величина  мора 

бити јасан и прост.

 

4.

 

Резултативност

.

 

За сваки скуп улазних величина мора бити 

дефинисано шта је резултат.

 

5.

 

Масовност

.

 

Алгоритам  треба  тако  натравити  да  важи  за 

најшири скуп улазних података.

 

 

1 1 . 5 .

 

П Р О В Е Р А   И С П Р А В Н О С Т И  

А Л Г О Р И Т М А

 

 

Посао састављања алгоритма је креативне природе, и не постоје 

универзалан правила по коме се посао може формализовати.

 

Само  код  једноставних  структура,  као  што  су  линијске 

структуре,  исправност  се  може  утврдити  пажљивим  прегледом  свијх 
корака. 

 

За

 

испитивање

 

исправности

 

алгоритма

 

најчешће

 

се

 

користи

 

тестирање

Изабира

 

се

 

известан

 

број

 

примера

али

 

тако

 

се

 

лако

 

може

 

background image

119 

 

 

 

15.

 

Написати алгоритамску шему за дељење два броја.

 

 

Решење:

 

 

120 

 

 

16.

 

Израчунати израз: 

2

4

9

1

.

1 2

1 2 3

!

n

S

n

 

 

 

 

Решење:

 

background image

 

122

1 2 .

 

М А Т Е М А Т И Ч К А

 

Д Е Ф И Н И Ц И Ј А

 

А Л Г О Р И Т М А

 

Ц И Љ Е В И

 

У Ч Е Њ А

 

Када

 

ово

 

поглавље

 

проучите

 

моћи

 

ћете

 

да

 

1.

 

дефинишете

 

рекурзивне

 

функције

2.

 

знате

 

шта

 

је

 

Тјурингова

 

машина

3.

 

искажете

 

Черчову

 

тезу

 

Алгоритам

 

записан

 

у

 

облику

 

блок

 

шеме

 

не

 

може

 

бити

 

прихваћен

 

и

 

извршен

 

од

 

стране

 

рачунара

Да

 

би

 

био

 

прихваћен

 

и

 

извршен

он

 

мора

 

бити

 

записан

 

на

 

начин

 

који

 

је

 

прихватљив

 

од

 

стране

 

рачунара

а

 

то

 

је

 

програм

Процес

 

писања

 

програма

 

је

 

програмирање

За

 

програмирање

 

се

 

користе

 

посебни

 

језици

 

који

 

представљају

 

комуникацију

 

између

 

човека

 

и

 

рачунара

 

Помоћу

 

рачунара

 

можемо

 

решити

 

само

 

онај

 

проблем

 

за

 

који

 

можемо

 

написти

 

алгоритам

 

Интуитивно

 

схватање

 

алгоритма

 

као

 

поступка

 

за

 

решавање

 

проблема

 

не

 

задовољава

 

ни

 

теоријске

 

ни

 

практичне

 

потребе

То

 

се

 

нарочито

 

односи

 

на

 

алгоритамски

 

нерешиве

 

проблеме

или

 

за

 

оне

 

за

 

које

 

постоје

 

алгоритми

 , 

али

 

се

 

дуго

 

извршавају

користе

 

се

 

процедуре

које

 

упркос

 

великој

 

ефикасности

не

 

гарантују

 

решавање

 

проблема

 

Наравно

 

поставља

 

се

 

и

 

питање

 

да

 

ли

 

за

 

сваки

 

проблем

 

можемо

 

саставити

 

алгоритам

 

за

 

његово

 

решавање

односно

 

постоје

 

ли

 

задаци

 

за

 

које

 

поступак

 

решавања

 

не

 

може

 

бити

 

представљен

 

у

 

облику

 

алгоритма

Као

 

што

 

смо

 

већ

 

нагласили

 

постоје

 

различити

 

начини

 

да

 

се

 

дефинишу

 

алгоритми

Дијаграм

алгоритамска

 

шема

 

Псеудо

 

језици

 –

псеудо

 

кодови

 

Програмски

 

језици

 

Простова

 

машина

  

Тјурингова

 

машина

 

Рекурзивне

 

функције

 

 

123

1 2 . 1 .

 

Р Е К У Р З И В Н Е

 

Ф У Н К Ц И Ј Е

 

И

 

А Л Г О Р И Т М И

 

 

Један

 

од

 

начина

 

да

 

се

 

дефинише

 

алгоритам

 

је

 

помоћу

 

рекурзивних

 

функција

. 

Ми

 

ћемо

 

рекурзивне

 

функције

 

дефинисати

 

на

 

скупу

 

целих

 

бројева

мада

 

се

 

та

 

дефиниција

 

може

 

уопштити

Рекурзија

  (

лат

recursio,  recursion

  o

д

 

recurrere

враћање

у

 

математици

 

и

 

информатици

 

означава

 

поступак

 

или

 

функцију

 

које

 

у

 

својој

 

дефиницији

 

користе

 

саме

 

себе

Састоје

 

се

 

из

 

два

 

корака

 

1.

 

Функција

 

је

 

дефинисана

 

за

 

неку

 

почетну

 

вредност

 

a

 

(

најчешће

 0 

или

 1) 

2.

 

Ако

 

је

 

функција

 

дефинисана

 

за

 

неку

 

вредност

 

n

која

 

је

 

већа

 

или

 

једнака

 

a

тада

 

може

 

да

 

се

 

дефинише

 

и

 

за

 

вредност

 

1

n

 

Рекурзивне

 

дефиниције

 

су

 

присутне

 

у

 

математици

 

Пример

 

је

 

следећа

 

дефиниција

 

природних

 

бројева

 

је

 

природни

 

број

 

Ако

 

је

 

n

 

природни

 

број

онда

 

је

 

то

 

и

 

1

n

Рекурзивне

 

функције

 

имају

 

за

 

особину

 

да

 

за

 

израчунавање

 

њених

 

вредности

 

постоји

 

ефективни

 

поступак

Нажалост

 

процес

 

израчунавања

 

може

 

да

 

буде

 

дуготрајан

али

 

је

 

увек

 

јасан

 

и

 

очигледан

До

 

решења

 

ћемо

 

увек

 

доћи

 

после

 

коначно

 

много

 

проверавања

За

 

такве

 

функције

 

кажемо

 

да

 

су

 

израчунљиве

 

Пример

Уочимо

 

функцију

 

 

n

f n

a

дефинисану

 

на

 

скупу

 

ненегативних

 

целих

 

бројева

.  

Она

 

се

 

може

 

схватити

 

као

 

производ

 

од

 

n

 

вредности

 

броја

 

a

Исто

 

тако

 

може

 

се

 

записати

 

и

 

рекурзивно

 

на

 

следећи

 

начин

 

 

 

0

0

1

знајући да је

1 ,

1

.

f

a

f n

a f n

 

 

Израчунати

 

 

3

f

background image

 

125

Обично

 

се

 

одреди

 

неколико

 

почетних

 

вредности

па

 

се

 

на

 

основу

 

тих

 

података

 

изводи

 

општи

 

образац

Тај

 

образац

 

треба

 

строго

 

доказати

 

математичком

 

индукцијом

 

Пример

Решити

 

рекурентну

 

једначину

  

 
 

1

1

1

f

f k

f k

k

 

Како

 

је

  

 

 

  

  

1 2

1

1

2

2 3

2

1 2

2

3 4

3

1 2

3

2

4 5

4

1 2 3

4

2

f

f

f

f

 

  

 

 

 

 

Значи

 

можемо

 

да

 

закључимо

 

да

 

је

 

 

1

1 2 3

2

n n

f n

n

   

Прво

 

доказујемо

 

да

 

је

 

за

 

1

n

 

 

1 2

1

1

2

f

 

 

1

1

1

2

2

k

k

k k

f k

k

k

f k

 

 

Пример

Решити

 

рекурентну

 

једначину

  

 
 

1

2,

2

1 .

f

f k

k f k

  

 

 

Решење

:

 

 

2

!

n

f n

n

 

 

1 2 . 2 .

 

Р Е К У Р З И В Н И

 

А Л Г О Р И Т М И

 

 

 

126

Алгоритам

 

је

 

рекурзивни

 

ако

 

се

 

решавање

 

проблема

 

своди

 

на

 

предходни

 

корак

једноставијег

 

улаза

 
 

Рекурзивни

 

алгоритам

 

за

 

израчунавање

 

степена

 

:

(

,

)

0

,

1

,

,

1

procedura stepen a je realan broj n je nenegativan broj

if n

then stepen a n

else stepen a n

a stepen a n

 

 

 
 

Рекурзивни

 

алгоритам

 

за

 

израчунавање

 

факторијела

 

 

 

:

(

0)

1

1

1

procedura fakt n

if n

then fakt n

else

fakt n

n fakt n

 

 

 
 

Интерактивни

 

алгоритам

 

за

 

израчунавање

 

факторијела

 

:

(

0)

1

1

!

procedura fakt n

x

for i

to n

x

i x

x je n

 

 

 
 

Рекурзивни

 

алгоритам

 

за

 

израчунавање

 

Фибоначијевих

 

бројева

 

 

 

 

:

(

0)

0

0

0

1

1

1

1

2

procedura fib n

if n

then fib

else n

then fib

else fib n

fib n

fib n

 

 
 
 
 
 
 

background image

 

128

1 2 . 4 .

 

Т Ј У Р И Н Г О В А

 

М А Ш И Н А

 

Тјурингова

 

машина

 

открива

 

суштину

 

појма

 

алгоритма

 

разматрањем

 

поступака

 

који

 

се

 

остварити

 

на

 

машини

 

и

 

може

 

да

 

послужи

 

за

 

дефиницију

 

појма

 

алгоритма

.

 

Тјурингова

 

машина

 

је

 

један

 

замишљени

 

модел

 

рачунара

Ову

 

машину

 

је

 1936. 

године

 

описао

 

Алан

 

Тјуринг

Настала

 

је

 

пре

 

настанка

 

савремених

 

електронских

 

рачунара

 . 

 

 

Алан

 

Матисон

 

Тјуринг

  (1912-1954), 

је

 

био

 

енглески

 

математичар

логичар

 

и

 

криптограф

Сматра

 

се

 

оцем

 

модерног

 

рачунарства

Дао

 

је

 

значајан

 

и

 

провокативан

 

допринос

 

дебати

 

која

 

се

 

тицала

 

вештачке

 

интелигенције

тј

да

 

ли

 

ће

 

икад

 

бити

 

могуће

 

рећи

 

да

 

је

 

машина

 

свесна

 

и

 

да

 

може

 

да

 

мисли

.  1947. 

је

 

прешао

 

у

 

Манчестерски

 

универзитет

 

и

 

радио

 

је

 

углавном

 

на

 

софтверу

на

 

Марку

 I, 

за

 

који

 

се

 

сматра

 

да

 

је

 

један

 

од

 

првих

 

правих

 

рачунара

Током

 

Другог

 

светског

 

рата

Тјуринг

 

је

 

радио

 

у

 

Блечли

 

парку

британском

 

криптоаналитичком

 

центру

 

и

 

био

 

је

 

једно

 

време

 

шеф

 

Хут

-

а

  8, 

одељења

 

задуженог

 

за

 

немачку

 

морнарицу

Тјуринг

 

је

 

развио

 

више

 

техника

 

за

 

разбијање

 

шифара

укључујући

 

метод

 

бомбе

електромеханичку

 

машину

која

 

је

 

могла

 

да

 

открије

 

поставке

 

немачке

 

подморничке

 

шифре

 

Енигме

Године

 1952. 

Тјуринг

 

је

 

осуђен

 

за

 

дело

 „

велике

 

непристојности

“, 

пошто

 

је

 

признао

 

да

 

је

 

био

 

у

 

вези

 

са

 

мушкарцем

 

у

 

Манчестеру

Тјуринг

 

је

 

умро

 1954. 

пошто

 

је

 

појео

 

јабуку

 

напуњену

 

цијанидом

Његова

 

смрт

 

се

 

сматра

 

самоубиством

Постоје

 

теорије

 

које

 

тврде

 

да

 

је

 

ликвидиран

 

од

 

стране

 

британске

 

тајне

 

службе

 

због

 

тога

 

што

 

је

 

под

 

уценом

 

могао

 

одати

 

државне

 

тајне

 

страним

 

агентима

Познат

 

је

 

и

 

по

 

томе

 

што

 

је

 

дефинисао

 

тест

 

интелигенције

 

вештачке

 

интелигенције

Циљ

 

овог

 

тестирања

 

је

 

да

 

се

 

одреди

 

да

 

ли

 

је

 

машина

 

заиста

 

интелигентна

или

 

је

 

тек

 

симулација

 

интелигенције

До

 

сада

 

ни

 

једна

 

машина

 

није

 

успела

 

да

 

прође

 

тјурингов

 

тест

док

 

га

 

људи

 

пролазе

 

129

 

Тјурингова

 

машина

 

опонаша

 

понашање

 

човека

 

који

 

рачуна

 

по

 

строго

 

утврђеним

 

прописима

Користи

 

се

 

за

 

решавање

 

проблема

 

одлучивања

То

 

су

 

проблеми

 

код

 

којих

 

се

 

решење

 

састоји

 

у

 

утврђивању

 

или

 

оповргавању

 

неке

 

особине

односно

 

решавање

 

проблема

 

може

 

да

 

се

 

сведе

 

на

 

одговоре

 

да

 

или

 

не

. 

Наравно

 

нису

 

сви

 

проблеми

 

проблеми

 

одлучивања

али

 

се

 

неки

 

могу

 

свести

 

на

 

њих

Мада

 

могу

 

да

 

буду

 

технички

 

могући

Тјурингове

 

машине

 

нису

 

смишљене

 

као

 

практична

 

рачунарска

 

технологија

већ

 

као

 

мисаони

 

експеримент

 

о

 

границама

 

механичког

 

рачунања

 

и

 

у

 

пракси

 

ове

 

машине

 

се

 

не

 

конструишу

.  

 

  

Тјуринг

 

је

 

направио

 

је

 

концепт

 

алгоритама

 

за

 

рачунање

 

помоћу

 

Тјурингове

 

машине

формулишући

 

данас

 

широко

 

прихваћену

 

Тјурингову

 

верзију

 

Черчове

 

тезе

 

Проблем

 

је

 

алгоритамски

 

решив

 

акко

 

се

 

може

 

решити

 

на

 

Тјуринговој

 

машини

.

 

 

Алгоритмом

 

се

 

може

 

сматрати

 

сваки

 

низ

 

инструкција

 

који

 

се

 

може

 

урадити

 

на

 

Тјуринговој

 

машини

.

 

 

Тјурингова

 

машина

 

има

 

врло

 

једноставну

 

конструкцију

Састоји

 

се

 

од

 

бесконачне

 

траке

која

 

има

 

на

 

себи

 

поља

 – 

ћелије

 

у

 

које

 

могу

 

да

 

се

 

уписују

 

симболи

 

и

 

главе

 

која

 

може

 

да

 

чита

 

и

 

пише

 

симболе

За

 

Тјурингову

 

машину

 

се

 

дефинише

 

азбука

 

симбола

 

 

која

 

ће

 

се

 

у

 

њој

 

користити

и

 

списак

 

стања

 

Q

 

у

 

којима

 

глава

 

за

 

читање

 

и

 

писање

 

може

 

да

 

се

 

налази

Дефинишу

 

се

 

почетно

 

стање

и

 

завршно

 

стање

почетно

 

стање

 

је

 

стање

 

у

 

коме

 

се

 

машина

 

налази

 

на

 

почетку

 

рада

а

 

када

 

машина

 

дође

 

у

 

завршно

 

стање

престаје

 

са

 

радом

Глава

 

може

 

да

 

се

 

помера

 

за

 

једно

 

поље

 

улево

за

 

једно

 

поље

 

удесно

или

 

да

 

остане

 

у

 

месту

У

 

зависности

 

од

 

стања

 

у

 

коме

 

се

 

глава

 

налази

и

 

од

 

симбола

 

који

 

background image

 

131

Решење

0,1,

S

b

где

 

је

 

b

 

празан

 

симбол

 

8.

 

Шта

 

је

 

скуп

 

стања

 

Тјурингове

 

машине

 

Решење

0

1

2

,

,

,

,

Q

q q q q q

где

 

је

  b

 

празан

 

симбол

0

q

 

је

 

почетно

 

стање

,

q q

 

су

 

завршна

 

стања

9.

 

Како

 

се

 

све

 

може

 

дефинисати

 

алгоритам

10.

 

Дефиниција рекурзивне функције.

 

11.

 

Написти функцију 

 

2

n

f n

 

у

 

рекурзивном

 

облику

12.

 

Написти функцију 

 

!

f n

n

 

у

 

рекурзивном

 

облику

13.

 

Дефинисати Фибоначијев низ.

 

14.

 

Написати  алгоритам  који  за 

n

 

унетих  бројева  рачуна 

аритметичку средину унетих бројева.

 

15.

 

Написати  алгоритам  који  за  унету  вредност  променљиве 

x

 

рачуна вредност израза 

3

x

16.

 

Написати  алгоритам  који  за  унете  вредности  променљиве 

x

 

и

 

параметра

 

n

 

рачуна вредност израза 

11

x

p

17.

 

Написати  алгоритам  који  за  унете  вредности  дужине  страница 

a

 

и 

b

 

правоугаоника рачуна површину и обим правоугаоника. 

Обезбедити  проверу  унетих  вредности 

a

 

и 

b

 

извршити  захтев 

задатка само за дозвољене вредности тј за 

0

a

 

и 

0

b

18.

 

Написати  алготитам  који  за 

n

 

унетих  бројева  одређује  по 

апсолутној вредности навећу вредност.

 

19.

 

Написати  алготитам  који  за 

n

 

унетих  бројева  одређује  по 

апсолутној вредности најмању вредност.

 

20.

 

Написати  алготитам  који  за 

n

 

унетих  бројева  одређује  колико 

унетих  бројева  припада  интервалу 

,

a b

где 

,

a b

 

и 

n

 

уноси 

корисник. 

 

21.

 

Написати  алготитам  који  за  произвољне  параметре 

,

a b

 

и 

c

 

приказује  решења  квадратне  једначине 

2

0

ax

bx

c

 

.  У 

случају да једначина нема реална решења, приказати адекватну 
поруку. 

 

22.

 

Написати  алготитам  који  сортира  елементе  низа 

 

a i

 

где 

0,

1

i

n

 

у неопадајући поредак.

 

 

132

23.

 

Написати  алготитам  који  сортира  елементе  низа 

 

a i

 

где 

0,

1

i

n

 

у нерастући поредак.

 

24.

 

Написати алгоритам за израчунавање суме 

0

!

n

i

S

i

, где 

n

 

уноси корисник.

 

25.

 

Написати алгоритам за израчунавање суме 

 

0

!

n

i

x i

S x

i

, где 

n

 

и 

x  

 

уноси корисник.

 

26.

 

Написати алгоритам за израчунавање производа 

1

1

!

n

i

P

i

, где 

 

 

n

 

уноси корисник.

 

27.

 

Написати алгоритам за израчунавање производа 

 

1

2

n

i

x i

P x

n i

, где 

n

 

и

 

x  

 

уноси корисник.

 

28.

 

Написати алгоритам за израчунавање производа 

 

1

!

n

i

x

P x

i

i

, где 

n

 

и

 

x  

 

уноси корисник.

 

29.

 

Написати алгоритам за израчунавање израза 

 

(

1)

1

(

2)

1

...1

1

nx

V x

n

x

n

x

x

, где 

n

 

и

 

x

 

уноси корисник.

 

 
 

К Љ У Ч Н Е   Р Е Ч И

 

 

Алгоритам

 

Черчова

 

теза

 

Тјурингова

 

машина

 

Рекурзија

 

Израчунљивост

 

 

background image

 

134

Просторна  сложеност

 

проблема  је  повезан  концепт,  који  мери 

количину  простора,  или  меморије  коју  алгоритам  захтева.  Просторна 
сложеност се такође мери великом 

O

 

нотацијом.

 

1 3 . 1 .

 

П Р О Б Л Е М И   О Д Л У К Е

 

Већи  део  теорије  сложености  се  бави  проблемима  одлуке. 

Проблем одлуке  је  проблем  који  увек  има  одговор  да

 

или  не.  Теорија 

сложености  разликује  проблеме  који  верификују  одговоре  да

 

и  оне 

који верификују одговоре

 

не

Проблем који инвертира да

 

и не

 

одговоре 

другог  проблема  се  зове  комплемент  тог  проблема.

 

Проблеми  одлуке 

често  се  разматрају  будући  да  произвољан  проблем  може  увек  бити 
сведен на проблем одлуке.

 

Важан  резултат  теорије  сложености  је  чињеница  да  без  обзира 

колико  тежак  проблем  може  постати  (тј.  колико  временских  и 
просторних  ресурса  захтева),  увек  ће  постојати  тежи  проблеми.  За 
временску  сложеност,  ово  се  доказује  теоремом  о  временској 
хијерархији.  На  сличан  начин  може  бити  изведена  теорема  о 
просторној хијерархији.

 

1 3 . 2 .

 

Р А Ч У Н С К И   Р Е С У Р С И

 

Теорија  сложености  анализира  тешкоћу  рачунских  проблема  у 

терминима  много  различитих  рачунских  ресурса.  Исти  се  проблем 
може  описати  у  терминима  потребних  количина  разних  рачунских 
ресурса,  укључујући  време,  простор,  случајност,  алтернацију  и 
осталим  мање  битним  терминима.  Класа  сложености  је  скуп  свих 
рачунских  проблема  који  могу  бити  решени  користећи  одређену 
количину рачунског ресурса.

 

Једни  од  највише  проучаваних  рачунских  ресурса  су 

детерминистичко  време

 

и  детерминистички  простор.  Ови  ресурси 

представљају  количину  времена  рачунања

 

и  меморијског  простора

 

потребних  детерминистичком  рачунару.  Ови  ресурси  су  од  великог 
практичног интереса, и веома проучавани.

 

 

 

 

135

1 3 . 3 .

 

Н Е У К Р О Т И В О С Т

 

Проблеми који су решиви у теорији, али не могу бити решени у 

пракси, се зову неукротивим. Шта тачно може бити решено “у пракси” 
је  отворено  питање  за  дискусију,  али  уопштено  то  су  само  проблеми 
који имају временски полиномна решења решиви за више улаза

Да би 

се  видело  зашто  решења  у  експоненцијалном  времену  нису 
употребљива  у  пракси,  размотрићемо  проблем  који  захтева 

2

n

 

операција  за  решавање  где  је 

n

 

велићина  улаза.  За  релативно  мале 

улазе  од 

100

n

,  и  узимајући  компјутер  које  може  обавити  1012 

операција у секунди, решење би захтевало 

4 1010

година.

 

1 3 . 4 .

 

О С О Б И Н Е   А Л Г О Р И Т А М А

 

1.

 

Дискретност 

алгоритама. 

Ако 

посматрамо 

извршавање 

алгоритама  у  времену,  тада  сваком  алгоритамском  кораку 
можемо  придружити  дискретан  временски  период  у  ком  се  тај 
корак извршава.

 

2.

 

Детерминантност  алгоритама.  Сваки  алгоритамски  корак 
садржи  улазне  величине  на  основу  којих  се  једнозначно 
одређују излазне величине.

 

3.

 

Елементарност алгоритамских корака. Закон добијања излазних 
величина  на  основу  улазних  параметара

 

мора  бити  јасан  и 

прост.

 

4.

 

Резултативност  алгоритама.  За  сваки  могући  скуп  улазних 
величина  у  алгоритму  мора  бити  дефинисано  шта  се  сматра 
резултатом.

  

5.

 

Масовност.  Алгоритам  треба  уредити  тако  да  важи  за  најшири 
скуп улазних величина.

  

6.

 

Еластичност

применљивост  алгоритма  на  различите  варијанте 

изворних података.

 

7.

 

Елементарност 

– 

једноставна  правила  за  добијање  излазних 

величина  на основу  улазних  величина  у  сваком  алгоритамском 
кораку

 
 
 
 
 

background image

 

137

вредност кључа, кажемо да се ради о уређеној структури, у супротном 
стуктура  је  неуређена.  Што  се  променљивости  тиче,  разликујемо 
статичне  и  динамичне  скупове  података.  Статичан  скуп  података  је 
непроменљив,  па  је  битно  само  оптимизовати  претраживање,  док  је 
динамичан скуп података подложан честим уметањима и брисањима.

 

 

1 3 . 6 .

 

С Е К В Е Н Ц И Ј А Л Н О   П Р Е Т Р А Ж И В А Њ Е

 

 

Секвенцијално  претраживање  подразумева  да  се  тражени  кључ 

узастопно упоређује са

 

по једним кључем из неуређене табеле, све док 

се  не  дође  до  сагласности  или  док  се  не  испитају  сви  кључеви.

 

Овај 

метод  се  још  назива  и 

линеарно  претраживање

.  Нека  су  кључеви 

организовани као низ 

1:

K

n

 

од 

n

 

елемената. 

 

 

Тада  се  алгоритам  секвенцијалног  претраживања  низа 

K

 

реализује 

као  функција 

SEQ-SEAECH

,  чији  је  елемент  тражени  клуч.  Ова 

функција  враћа  позицију  кључа  у  оквиру  низа  код  успешног 
претраживања или вредност нула ако кључа нема у датом низу. Ако се 
кључ  појављује  више  пута  у  низу 

K

,  функција  враћа  вредност 

позиције кључа са најнижим индексом.

 

 

SEQ-SEARCH(

K, key

i

 = 0 

while 

(i 

 

n

 ) 

do 

 

if 

(

key

 = 

K[i]

then 

 

 

return 

i

 

 

else 

 

 

i

 = 

i

+1 

 

end_if 

end_while 
return 0 

 

Време  извршења  овог  алгоритма  може  нешто  са  се  скрати  ако  се 

уведе граничник (

sentinel

), као у функцији 

SEQ-SEAECH -SENT. 

 
 
 
 
 

 

138

SEQ-SEARCH-SENT(

K, key

K[n+1]

 = 

key

 

i

 = 1 

while 

(

key

 

 

K[i]

 ) 

do 

 

i

 = 

i

+1 

end_while 
if 

(

i

 = 

n

+1) 

then 

 

i

 = 0 

end_if 
return i
 

 

У

 

функцији

 SEQ-SEAECH -SENT 

тражени

 

кључ

 

постављамо

 

на

 

1

n

 

место

Претраживање  се  врши  док  је  тренутни  елемент  низа  различит 

од  траженог  кључа.  Када  је  текући  елемент  једнак  траженом  кључу, 
поступак се прекида, а као и у функцији 

SEQ-SEAECH

, ако се вредност 

кључа  појављује  више  пута  у  низу,  враћа  се  прва  позиција  његовог 
појављивања. 

 

 

Поступак  се  прекида  у  најгорем  случају  за 

1

i

n

 

,  што  се  догађа 

када  се  тражени  кључ  не  појављује  у  низу.  Овај  алгоритам  је 
ефикаснији  од  претходног  за  око  50%  за  велико 

n

.  Међутим, 

ефикасност  овог  алгоритма  у  општем  случају  није  добра.  Број 
поређења  при  успешном  претраживању  зависи  од  позиције  кључа  у 
низу. Ако су кључеви једнако вероватни, онда је у просеку потребно

 

 

 

1 2

1

2

n

n

n

 

 

 

поређења  при  успешном  претраживању,  док  је  за  неуспешно 
претраживање  потребно 

n

 

поређења,  јер  треба  испитати  све  кључеве 

док  се  не  утврди  да  треженог  кључа  нема.  Временска  сложеност овог 
метода је 

 

O n

, што је прихватљиво за мало 

n

 

Обе  приказане  реализације  секвенцијалног  претраживања  могу  да  се 
примењују и на претраживање у уланчаној листи.

 

 
 
 

background image

 

140

Описана  побољшања  метода  секвенцијалног  претраживања  су 

заснована 

на 

претпоставци 

временске 

локалности 

обраћања 

кључевима.  Очекује  се  да  ће  тренутно  тражени  кључ  вероватно  бити 
ускоро тражен поново, па се његовим померањем ка почетку скраћује 
пут при наредном тражењу.

 

 

1 3 . 8 .

 

С Е К В Е Н Ц И Ј А Л Н О   П Р Е Т Р А Ж И В А Њ Е  

У   У Р Е Ђ Е Н И М   Т А Б Е Л А М А

 

 

Уколико  је  табела  над  којом  се  врши  претраживање  уређена,

 

ефикасност  секвенцијалног  претраживања  се  може  побољшава  али 
само за неуспешно претраживање. Претпоставимо да је табела уређена 
по  растућем  поретку  кључева.  Претраживање  у  том  случају  можемо 
прекинути чим се нађе први кључ који  је већи од траженог кључа.  За 
разлику  од  претраживања  код  неуређене  табеле,  где  се  неуспешно 
претраживање  завршава  кад  се  стигне  до  краја  табеле,  овде  се  време 
неуспешног претраживања у просеку смањује за 50%. 

 

 

Проблем  са  уређеним  табелама  је  што  се  приликом  уметања 

вредности у табелу мора водити рачуна о очувању  уређења табеле, па 
њена  сложеност  постаје  линеарна.  Ово  је  последица  чињенице  да 
уметању  новог  податка  претходи  неуспешно  претраживање  које 
лоцира  место  где  треба  да  се  уметне  нови  податак,  што  у  просеку 

захтева 

2

n

 

поређења.

 

Уређена табела  је погодна за једновремено претраживање на више 

кључева.  Тада  је  набоље  да  се  и  вредности  кључева  који  се  траже 
поставе у исти поредак, па није потребно табелу претраживати за сваки 
кључ  посебно.  У  овом  случају  се  табела  и  низ  тражених  кључева 
паралелно  секвенцијално  претражују  у  само  једном  пролазу,  што  је 
врло ефикасно поготово за већи број истовремених захтева.

 

 

Пут  претраживања  у  уређеној  табели  може  се  скратити  и 

коришћењем  помоћне  структуре 

индекса.  Ова  структура  садржи 

мањи  број  еквидистантних  кључева  из  табеле  и  њихове  позиције  у 
табели.  Индекс  се  секвенцијално  претражује,  такође,  али  је  много 
„ређи“ и брже се претражује, па тиме веома сужава опсег кључева који 
секвенцијално треба претражити у самој табели.

 

Кључ може да се нађе 

и у самом индексу, без приступа табели. У општем случају, за тражени 

 

141

кључ се нађу у индексу две узастопне вредности од којих је прва мања, 
а  друга  већа  од  траженог  кључа,  па  се  прелази  на  тражење  у  табели, 
али само између позиција које одговарају кључевима из индекса.

 

 

1 3 . 9 .

 

Б И Н А Р Н О   П Р Е Т Р А Ж И В А Њ Е

 

 

Проблем  ефикасности  секвенцијалног  претраживања  је  чињеница 

да се сваким неуспешним поређењем одбације само један податак, чак 
и  у  случају  да  је  табела  уређена  по  вредностима  кључева.  У  оваквој 
табели, једним поређењем се смањује опсег претраживања на тај начин 
што  ако  је  упоређени  кључ  на  позицији 

i

 

већи  од  траженог  кључа, 

онда  он  сигурно  већи  и  од  свих  кључева  на  позицијама 

1,

,

1

i

,  па 

нема  смисла  да  се

 

претражују  вредности  кључева  на  тим  позицијама. 

Самим  тим  су  свих 

i

 

кључева  искључени  из  даље  претраге,  па  је 

побољшање евидентно у односу на секвенцијално претраживање где је 
одбачен  само  један  елемент.  Поставља  се  питање  који  елемент 
изабрати за прво поређење.  Показује се најефикасније  да  се поређења 
врше на половини интервала и да се тај интервал даље полови док се 
поступак 

не 

заврши 

проналажењем 

траженог 

кључа 

или 

претраживањем  празног  интервала.  Описана  метода  је  добила  име 

бинарно претраживање

 

Алгоритам  бинарног  претраживања  је  типичан  пример  групе 

алгоритама са стратегијом „подели па владај“, па се често реализује на 
рекурзиван  начин.  Итеративана  верзија  бинарног  претраживања  је 
ефикаснија, па је из тог разлога дата функција BIN

-

SEARCH која врши 

бинарно  претраживање  табеле 

K

 

на  задати  кључ 

key

.  Ова  функција 

прво  упоређује  задати  кључ  са  кључем  који  се  налази  на  средњој 
позицији 

mid

 

табеле 

K

.  Ако  се  утврди  једнакост,  претраживање  се 

заврши као успешно и враћа се позиција 

mid

 

на којој се кључ налази. 

Ако  је  тражени  кључ  мањи,  горња  половина  кључева 

(mid  +  1)..

 

n

 

се 

одбацује  и  поступак  се  рекурзивно  наставља  са  доњом  половином 

1..(mid  -  1). 

Ако  је  тражени  кључ  већи,  онда  се  поступак  наставља  са 

горњом половином интервала. Тако  се, у сваком кораку, број кључева 
које треба испитати смањује за половину. Неуспешно претраживање се 
проглашава  ако  се  дође  до  интервала  који  садржи  само  један  кључ,  а 
његова вредност није једнака 

key

. То значи да се дошло до места где би 

background image

 

143

Бинарно

 

претраживање

 

је

 

погодно

 

за

 

табеле

 

које

 

су

 

смештене

 

као

 

низови

јер

 

израчунава

 

границе

 

интервала

 

преко

 

индекса

 

низа

Ово

 

није

 

применљиво

 

за

 

уланчане

 

листе

јер

 

ова

 

секвенцијална

 

структура

 

не

 

дозвољава

 

ефикасан

 

нелинеарни

 

приступ

.  

Принцип

 

бинарног

 

претраживања

 

се

 

користи

 

за

 

посебне

 

структуре

 

стабала

 

1 3 . 1 0 .

 

П Р Е Т Р А Ж И В А Њ Е

 

К О Р И Ш Ћ Е Њ Е М

 

Б И Н А Р Н О Г

 

С Т А Б Л А

 

 

Бинарно

 

претраживање

 

скупа

 

података

 

који

 

су

 

смештени

 

у

 

једном

 

сортираном

 

низу

 

је

 

веома

 

ефикасна

 

техника

 

логаритамске

 

сложености

Ова

 

структура

 

података

 

је

 

погодна

 

само

 

за

 

статичке

 

скупове

 

података

јер

 

одржање

 

ове

 

секвенцијалне

 

структуре

 

није

 

ефикасно

 

јер

 

је

 

операција

 

убацивања

 

новог

 

елемента

 

у

 

уређени

 

низ

 

линеарне

 

сложености

Зато

 

је

 

за

 

скупове

 

података

 

који

 

се

 

динамички

 

мењају

природно

 

усвојити

 

динамичку

 

структуру

 

која

 

се

 

ефикасније

 

модификује

.  

 

Употребићемо

 

стабло

 

Имајући

 

у

 

виду

 

потребу

 

за

 

бинарним

 

одлучивањем

 

при

 

претраживању

долазимо

 

до

 

једне

 

варијанте

 

бинарног

 

стабла

 

као

 

оптималне

 

структуре

 

– 

стабла

 

бинарног

 

претраживања

 

Дефиниција

Стабло

 

бинарног

 

претраживања

 

је

 

бинарно

 

стабло

 

за

 

које

 

важи

за

 

сваки

 

кључ

 

К

 

постоји

 

највише

 

један

 

чвор

 

са

 

адресом

 

p

 

тако

 

са

 

важи

 

ке

y

(

п

) = 

К

кључеви

 

свих

 

потомака

 

l

p

 

у

 

левом

 

подстаблу

  (

ако

 

је

 

непразно

су

 

мањи

 

од

 

кључа

 

тог

 

чвора

 (

ке

y

(

l

p

) < 

К

), 

кључеви

 

свих

 

потомака

 

r

p

 

у

 

десном

 

подстаблу

  (

ако

 

је

 

непразно

су

 

већи

 

од

 

кључа

 

тог

 

чвора

 (

ке

y

(

r

p

) > 

К

). 

 

На

 

основу

 

дефиниције

 

следи

 

да

 

се

 

вредност

 

кључа

 

неког

 

чвора

налази

 

између

 

кључева

 

у

 

свом

 

левом

 

и

 

десном

 

подстаблу

Растуће

 

сортирани

 

низ

 

свих

 

кључева

 

стабла

 

се

 

може

 

добити

 

обиласком

 

стабла

 

 

144

по

 

инордер

 

поретку

 

и

 

секвенцијалним

 

укључивањем

 

сваког

 

кључа

 

у

 

низ

 

при

 

његовој

 

посети

Једном

 

стаблу

 

одговара

 

само

 

један

 

овакав

 

низ

али

 

обрнуто

 

не

 

важи

јер

 

се

 

исти

 

сортирани

 

низ

 

може

 

добити

 

инордер

 

обиласком

 

више

 

стабала

 

бинарног

 

претраживања

 

различите

 

топологије

 

која

 

садрже

 

исте

 

кључеве

Ово

 

је

 

последица

 

чињенице

 

да

 

су

при

 

формирању

 

стабла

кључеви

 

уметани

 

у

 

различитом

 

поретку

Први

 

кључ

 

постаје

 

корен

 

стабла

а

 

при

 

уметању

 

нема

 

никакве

 

слободе

 

у

 

одређивању

 

где

 

се

 

нови

 

кључ

 

смешта

јер

 

је

 

то

 

одређено

 

претходном

 

дефиницијом

Пример

 

стабала

 

са

 

истим

 

скупом

 

вредности

 

кључева

а

 

различитим

 

топологијама

 

дат

 

је

 

на

 

следећој

 

слици

 

 

Слика

Пример

 

два

 

стабла

 

бинарног

 

претраживања

 

са

 

истим

 

вредностима

 

кључева

а

 

различитом

 

топологијом

 

background image

 

146

Операција

 

претраживања

 

почиње

 

у

 

корену

 

стабла

 

упоређивањем

 

тражене

 

вредности

 

и

 

вредности

 

кључа

 

корена

 

стабла

Уколико

 

се

 

не

 

пронађе

 

сагласност

поступак

 

се

 

рекурзивно

 

наставља

 

у

 

левом

односно

 

у

 

десном

 

подстаблу

 

у

 

зависности

 

од

 

тога

 

да

 

ли

 

је

 

вредност

 

кључа

 

корена

 

мања

 

или

 

већа

 

од

 

кључа

 

корена

У

 

случају

 

успешне

 

претраге

поступак

 

се

 

прекида

 

када

 

су

 

вредности

 

кључа

 

текућег

 

чвора

 

и

 

тражене

 

вредности

 

K

 

једнаке

док

 

у

 

случају

 

да

 

се

 

тражена

 

вредност

 

не

 

налази

 

у

 

стаблу

поступак

 

се

 

прекида

 

када

 

се

 

дође

 

до

 

празног

 

подстабла

Временска

 

сложеност

 

алгоритма

 

одређена

 

је

 

бројем

 

поређења

 

кључа

Како

 

овај

 

број

 

одговара

 

броју

 

нивоа

 

стабла

 

док

 

се

 

дође

 

до

 

неког

 

чвора

 

гранања

 

или

 

листа

он

 

не

 

може

 

бити

 

већи

 

од

 

висине

 

стабла

 

h

Зато

 

је

 

максимална

 

сложеност

 

реда

 

 

O h

.

 

 

Налажење

 

најмањег

 

и

 

највећег

 

кључа

 

у

 

стаблу

 

 

Из

 

претходне дефиниције

 

следи

 

да

 

се

 

кључ

 

са

 

минималном

 

вредношћу

 

налази

 

у

 

најлевљем

 

чвору

 

стабла

Зато

 

алгоритам

  BST-MIN 

за

 

стабло

 

бинарног

 

претраживања

 

где

 

је

 

корен

 

указан

 

аргументом

 

роот

 

иде

 

по

 

ланцу

 

левих

 

показивача

 

све

 

док

 

не

 

дође

 

до

 

чвора

 

који

 

нема

 

левог

 

сина

 

BST-

МIN

(

rооt

p=

rооt

 

while 

(left(p) 

nil ) 

d

о

 

 

p=left(p) 

еnd while

return  

p

 

 

Слично

 

се

 

налази

 

кључ

 

са

 

максималном

 

вредношћу

 

у

 

стаблу

који

 

је

 

лоциран

 

у

 

најдеснијем

 

чвору

Алгоритам

  BST-

МА

је

 

сличан

 

као

 

и

 

алгоритам

 BST-

М

IN 

с

 

тим

 

што

 

идемо

 

по

 

ланцу

 

десних

 

показивача

 

све

 

док

 

не

 

дођемо

 

до

 

чвора

 

који

 

нема

 

десног

 

сина

 

BST-

МА

X(

rооt

p=

роот

 

while 

(right(p) 

 nil ) 

d

о

 

 

p=right(p) 

е

nd_while 

return  

p

 

 
 

 

147

Налажење

 

претходника

 

и

 

следбеника

 

у

 

стаблу

 

 

Ове

 

операције

 

ће

 

касније

 

бити

 

коришћене

 

као

 

делови

 

операција

 

брисања

 

елемената

Следбеник

 

задатог

 

чвора

 

је

 

чвор

 

са

 

најмањим

 

кључем

 

који

 

је

 

већи

 

од

 

кључа

 

датог

 

чвора

Само

 

најдеснији

 

чвор

 

у

 

стаблу

са

 

максималном

 

вредношћу

 

кључа

 

нема

 

следбеника

.  

Налажење

 

следбеника

 

чвора

 

z

 

реализоваћемо

 

функцијом

  

TREE-SUCUCCESSOR

 

z

  

 

TREE-SUCUCCESSOR(z) 
p=z 

if 

(right(p)

nil) 

then

 

 

return BST-

MIN(right(p)) 

еlse

 

 

q=parent(p) 

 

while

(q

nil and 

p=right(q)) 

d

о

 

 

 

p=q 

 

 

q=parent(q) 

 

еnd

_while 

 

r

е

turn 

е

nd_if 

 

Ако

 

задати

 

чвор

 

има

 

десно

 

подстабло

следбеника

 

је

 

могуће

 

веома

 

ефикасно

 

пронаћи

Тада

 

се

 

следбеник

 

налази

 

као

 

најлевљи

 

кључ

 

у

 

том

 

десном

 

подстаблу

Ако

 

чвор

 

нема

 

десно

 

подстабло

поступак

 

је

 

сложенији

Тада

 

је

 

тражени

 

следбеник

 

најнижи

 

предак

 

задатог

 

чвора

 

чији

 

је

 

леви

 

син

 

такође

 

предак

 

задатог

 

чвора

Следбеник

 

се

 

налази

 

без

 

поређења

 

кључева

 

захваљујући

 

принципу

 

уређености

 

стабла

У

 

стаблу

 

бинарног

 

претраживања

претходник

 

задатог

 

чвора

 

се

 

дефинише

 

као

 

чвор

 

са

 

највећим

 

кључем

 

који

 

је

 

мањи

 

од

 

кључа

 

задатог

 

чвора

Само

 

најлевљи

 

чвор

 

у

 

стаблу

са

 

минималном

 

вредношћу

 

кључа

 

нема

 

претходника

Операција

 

налажења

 

претходника

 

је

 

јако

 

слична

 

операцији

 

налажења

 

следбеника

само

 

позив

 

функције

 BST-

М

IN 

треба

 

заменити

 

са

 BST-

МА

X, 

а

 

right

 

треба

 

заменити

 

са

 

l

е

ft

Операције

 

налажења

 

минималног

 

и

 

максималног

 

кључа

прерходника

 

и

 

следбеника

 

као

 

и

 

операција

 

претраживања

имају

 

време

 

извршаванаја

 

background image

 

149

Брисање

 

 

Операција

 

брисања

 

чвора

 

је

 

сложенија

 

од

 

операције

 

уметања

 

чвора

јер

 

жељени

 

чвор

 

не

 

мора

 

бити

 

лист

Постоје

 

три

 

случаја

 

која

 

се

 

разликују

 

по

 

сложености

 

и

 

они

 

су

 

приказани

 

на

 

следећој слици

Први

 

случај

 

је

 

када

 

из

 

стабла

 

бришемо

 

чвор

 

који

 

је

 

лист

 

(под б

).

У

 

овом

 

случају

 

само

 

ресетујемо

 

показивач

 

у

 

његовом

 

оцу

 

који

 

показује

 

на

 

њега

Други

 

случај

 

је

 

када

 

чвор

 

који

 

бришемо

 

има

 

само

 

једног

 

сина

У

 

том

 

случају

 

показивач

 

у

 

родитељском

 

чвору

 

који

 

показује

 

на

 

чвор

 

који

 

бришемо

 

треба

 

преусмерити

 

да

 

показује

 

на

 

сина

 

чвора

 

који

 

бришемо

 

(под ц

). 

Трећи

 

случај

 

је

 

најсложенији

 

и

 

он

 

настаје

 

када

 

чвор

 

који

 

треба

 

обрисати

 

има

 

два

 

подстабла

 

(под  д

). 

У

 

овом

 

случају

 

треба

 

наћи

 

следбеника

 

тог

 

чвора

 

и

 

показивач

 

оца

 

који

 

је

 

показивао

 

на

 

чвор

 

који

 

уклањамо

 

сада

 

треба

 

да

 

показује

 

на

 

његовог

 

следбеника

Отац

 

следбеника

 

преузима

 

десно

 

подстабло

 

следбеника

  (

он

 

нема

 

десно

 

подстабло

), 

а

 

следбениково

 

десно

 

подстабло

 

постаје

 

чвор

 

његовог

 

претходног

 

оца

а

 

лево

 

подстабло

 

му

 

је

 

сада

 

лево

 

подстабло

 

чвора

 

који

 

смо

 

уклонили

 

из

 

стабла

 

a) 

 
 
 
 

 

150

 

 

б

 

ц

background image

 

152

 

else 

 

 

//treci slucaj 

 

 

f = p 

 

 

rp = right(p) 

 

 

s = left(rp) 

 

 

while

 (s 

nil) 

d

о

 

 

 

 

f = rp 

 

 

 

rp = s 

 

 

 

s = left(rp) 

 

 

еnd

_while 

 

 

if 

(f 

p)

 

thеn

 

 

 

 

left(f) = right (rp) 

 

 

 

right(rp) = right(p) 

 

 

end_if 

 

 

left (rp) = left (p) 

 

еnd

_if 

еnd

_if 

if 

(q = nil)

 

thеn

 

 

rооt

 = rp 

еlse

  if 

(p = left(q))

 

thеn

 

 

 

left(q) = rp 

 

еlse

 

 

 

right(q) = rp 

 

еnd

_if 

еnd

_if 

 

 

Алгоритам

 

брисања

 

је

 

несиметричан

 

с

 

лева

 

удесно

па

 

би

 

се

 

могло

 

очекивати

 

да

након

 

извесног

 

броја

 

брисања

стабло

 

постане

 

дегенерисано

Описаћемо начине како да се поново успостави баланс.

 

Сложеност

 

операције

 

уклањања

 

чвора

 

је

 

сразмерна

 

висини

 

стабла

 

 

O h

 

Анализа

 

ефикасности

 

основних

 

операција

 

 

Све

 

основне

 

операције

 

у

 

стаблу

 

бинарног

 

претраживања

 

имају

 

временску

 

сложеност

 

 

O h

гхе

 

је

 

h

 

висина

 

стабла

У

 

најбољем

 

случају

 

сложеност

 

је

 

log

O

h

када

 

је

 

стабло

 

комплетно

 

или

 

скоро

 

комплетно

 (

слика

под

 

а

). 

У

 

најгорем

 

случају

када

 

на

 

пример

кључеви

 

долазе

 

у

 

растућем

 

или

 

опадајућем

 

поретку

 

добија

 

се

 

стабло

 

које

 

је

 

 

153

деградирано

 

и

 

има

 

само

 

лева

 

или

 

десна

 

подстабла

Код

 

њега

 

је

 

висина

 

1

h

n

где

 

је

 

n

 

број

 

чворова

па

 

је

 

временска

 

сложеност

 

 

O n

управо

 

као

 

и

 

код

 

секвенцијалног

 

претраживања

Пример

 

таквог

 

стабла

 

је

 

дат

 

на

 

слици

под  б

Исту

 

висину

 

има

 

и

 

стабло

 

које

 

настаје

 

када

 

се

 

кључеви

 

убацују

 

у

 

стабло

 

наизменично

 (

већи

 

од

 

претходног

па

 

мањи

 

од

 

претходног

али

 

већи

 

од

 

претпретходног

итд

). 

Пример

 

овог

 

стабла

 

приказан

 

је

 

на

 

слици, под ц

 

а)

 

 

б)

 

 

background image

 

155

лист

 

на

 

нивоу

 

k

у

 

проширеном

 

стаблу

 

одговарају

 

два

 

нова

 

екстерна

 

чвора

 

на

 

нивоу

 

1

k

Зато

 

је

 

 

 

1

2

1

2

PE n

PE n

k

k

PE n

k

 

 

Како

 

тврђење

 

важи

 

за

 

стабло

 

са

 

n

 

чворова

 

тј

 

 

2

PE n

PI n

n

 

следи

 

 

1

2

2

1

2

1 .

PE n

PI n

n k

PI n

n

 

 

 

Према

 

томе

ако

 

тврђење

 

важи

 

за

 

n

онда

 

оно

 

важи

 

и

 

за

 

1

n

што

 

је

 

требало

 

доказати

.   

 

Прецизније

 

одређивање

 

перформанси

 

случајног

 

стабла

 

бинарног

 

претраживања

насталог

 

као

 

резултат

 

произвољног

 

уметања

 

n

 

кључева

има

 

за

 

циљ

 

одређивање

 

дужине

 

пута

 

у

 

оваквом

 

стаблу

 

са

 

n

 

чворова

У

 

том

 

циљу

претпоставља

 

се

 

да

 

су

 

сви

 

редоследи

 

уметања

 

једнако

 

вероватни

а

 

тиме

 

и

 

све

 

топологије

 

које

 

које

 

настају

 

као

 

последица

 

поретка

 

уметања

 

кључева

Нека

 

је

 

n

S

 

просечан

 

број

 

поређења

 

при

 

успешном

 

претраживању

 

у

 

случајном

 

стаблу

 

са

 

n

 

једнако

 

верованих

 

кључева

а

 

n

U

 

просечан

 

број

 

поређења

 

при

 

неуспешном

 

претраживању

Како

 

сваки

 

кључ

 

по

 

уметању

 

остаје

 

на

 

месту

 

где

 

је

 

уметнут

број

 

поређења

 

при

 

приступу

 

постојећем

 

кључу

 

у

 

стаблу

 

са

 

i

 

чворова

 

је

 

за

 

један

 

већи

 

од

 

броја

 

поређења

 

који

 

су

 

били

 

потребни

 

да

 

се

 

тај

 

чвор

 

уметне

 

у

 

стабло

 

са

 

1

i

 

чворова

Овај

 

други

 

број

истовремено

 

представља

 

број

 

поређења

 

при

 

неуспешном

 

претраживању

Ако

 

се

 

он

 

усредњи

 

по

 

свим

 

конфигурацијама

 

стабла

 

од

 

до

 

1

n

 

кључева

 

добија

 

се

 

да

 

је

 

0

1

1

1

...

n

n

S

U

U

U

n

 

 

 

 

 

(1) 

С

 

друге

 

стране

број

 

поређења

 

за

 

успешан

 

приступ

 

кључу

 

за

 

један

 

је

 

већи

 

од

 

дужине

 

пута

 

до

 

њега

Како

 

је

 

збир

 

дужина

 

путева

 

до

 

свих

 

чворова

 

стабла

у

 

ствари

интерна

 

дужина

 

пута

 

PI

онда

 

важи

 

 

1

1

1

n

n

i

i

S

n

p

PI

n n

Ако

 

се

 

стабло

 

прошири

 

екстерним

 

чворовима

који

 

практично

 

представљају

 

крај

 

пута

 

у

 

случају

 

неуспешног

 

претраживања

број

 

поређења

 

при

 

неуспешном

 

претраживању

 

је

 

једнак

 

дужини

 

пута

 

до

 

екстерног

 

чвора

Ових

 

чворова

 

има

 

1

n

 

јер

 

толико

 

има

 

неуспешних

 

 

156

исхода

Сада

 

се

 

n

U

 

може

 

наћи

 

усредњавањем

 

екстерне

 

дужине

 

пута

 

PE

 

као

 

1

n

U

PE n

Применом

 

везе

 

између

 

интерне

 

и

 

екстерне

 

дужине

 

доказане

 

лемом

 

2

PE

PI

n

следи

 

2

1

1

1

n

n

n

S

PE

n

n

n

n

U

n

n

n

n U

.  

(2) 

Ако

 

се

 

изједначе

 

десне

 

стране

 

једначина

 (1) 

и

 (2), 

добија

 

се

 

0

1

1

2

...

1

n

n

n U

U

U

n

U

.   

 

 

 

(3) 

Када

 

се

 

у

 

претходној

 

једначини

 

уместо

 

n

 

стави

 

1

n

добија

 

се

 

0

1

2

1

2

1

...

n

n

n

U

U

U

nU

.  

 

 

 

(4) 

Одузимањем

 

једнакости

 (3) 

и

 (4) 

добија

 

се

  

1

1

2

1

n

n

n

U

n

U

nU

 

или

 

1

2

1

n

n

U

U

n

Како

 

је

 

0

0

U

 

и

 

1

1

U

а

 

1

1 1 2 ... 1

1

n

H

n

 

 

је

 

дефиниција

 

хармонијског

 

реда

онда

 

се

 

n

U

 

може

 

нерекурзивно

 

изразити

 

на

 

следећи

 

начин

1

2

n

n

U

H

Заменом

 

ове

 

вредости

 

у

 

израз

 

1

1

n

n

S

n

n U

добија

 

се

  

2 1 1

3

n

n

S

n H

 

Имајући

 

у

 

виду

 

Ојлерову

 

формулу

  

2

ln

1 12

...

n

H

n

n

где

 

је

 

Ојлерова

 

константа

 

0.577

за

 

довољно

 

велико

 

n

 

добија

 

се

 

да

 

је

 

2 ln

3

2 ln

n

S

n

n c

 

Одавде

 

следи

 

да

 

је

 

однос

 

средњих

 

дужина

 

пута

 

при

 

претраживању

 

у

 

стаблу

 

произвољне

 

топологије

 

и

 

балансираном

 

стаблу

  

2 ln

log

2 ln 2 1.386

n

n

 

Значи

просечна

 

перформанса

 

претраживања

 

у

  „

случајном

“ 

стаблу

 

произвољне

 

топологије

 

истог

 

реда

 

сложености

 

као

 

у

 

background image

 

158

Чвор

 

АВЛ

 

стабла

 

можемо

 

дефинисати

 

на

 

програмском

 

језику

 C, 

на

 

следећи

 

начин

struct   AvlNode{ 

Е

lementTyp

е

 

Е

lement; 

А

vl

Т

r

ее

  L

е

ft; 

А

vl

Т

r

ее

  Right; 

int      B; 

}; 

Оваква

 

репрезентација

 

се

 

разликује

 

од

 

репрезентације

 

бинарног

 

стабла

 

претраживања

 

само

 

по

 

томе

 

што

 

се

 

овде

 

за

 

сваки

 

чвор

 

стабла

 

издваја

 

и

 

једно

 

поље

 

типа

 

интегер

које

 

памти

 

баланс

 

чвора

У

 

неким

 

реализацијама

 

уместо

 

баланса

 

се

 

може

 

памтити

 

висина

 

чвора

 

Основне

 

операције

 

са

 

АВЛ

 

стаблом

 

 

Уметање

 

вредности

 

у

 

АВЛ

 

стабло

 

Нови

 

чвор

 

се

 

умеће

 

као

 

лист

Уметање

 

може

али

 

не

 

мора

да

 

поквари

 

балансираност

 

стабла

Једини

 

чворови

 

чији

 

баланс

 

може

 

бити

 

промењен

 

су

 

они

 

који

 

се

 

налазе

 

на

 

путу

 

од

 

корена

 

до

 

уметнутог

 

чвора

Ови

 

чворови

 

се

 

испитују

 

одоздо

 

на

 

горе

 

по

 

путу

 

до

 

корена

За

 

ове

 

чворове

 

може

 

да

 

настане

 

један

 

од

 

три

 

случаја

 

чвор

 

је

 

био

 

нагнут

 

на

 

једну

 

страну

 

и

 

лист

 

се

 

умеће

 

у

 

његово

 

ниже

 

подстабло

па

 

постаје

 

балансиан

 (

слика

под а

)), 

 

чвор

 

је

 

био

 

балансиран

па

 

постаје

 

нагнут

 

на

 

страну

 

подстабла

 

у

 

које

 

је

 

уметнут

 

нови

 

чвор

 (

слика, под

 

б

), 

 

чвор

 

је

 

био

 

нагнут

 

на

 

једну

 

страну

 

и

 

лист

 

се

 

умеће

 

у

 

подстабло

 

на

 

вишој

 

страни

па

 

овај

 

чвор

а

 

тиме

 

читаво

 

стабло

постају

 

небалансирани

 (

слика, под

 

ц

)). 

 
 

 

159

 

a) 

 

б

 

ц)

 

 

Слика

 

Три

 

случаја

 

уметања

 

у

 

АВЛ

 

стабло

а

балансираност

 

се

 

поправља

б

балансораност

 

се

 

квари

 

али

 

остаје

 

у

 

дозвољеном

 

опсегу

ц

стабло

 

постаје

 

небалансирано

 

 
 
 

background image

 

161

 

Слика

Пример

 

црвено

-

црног

 

стабла

поред

 

сваког

 

чвора

 

налази

 

се

 

црна

 

висина

 

чвора

 

Чвор

 

цвено

 – 

црног

 

стабла

као

 

и

 

АВЛ

 

чвор

 

има

 

још

 

јено

 

поље

 

више

 

у

 

односу

 

на

 

чвор

 

бинарног

 

стабла

 

претраживања

које

 

у

 

себи

 

садржи

 

боју

 

чвора

На

 

наредној  слици

 

је

 

приказана

 

једна

 

репрезентација

 

чвора

 

цвено

 – 

црног

 

стабла

 

у

 

програмском

 

језику

 C.  

typedef enum ColorType { Red, Black } ColorType; 
typedef struct RedBlackNode *RedBlackTree; 
 
struct RedBlackNode{ 
 

ElementType  Element; 

 

RedBlackTree Left; 

 

RedBlackTree Right; 

 

ColorType    Color; 

}; 

Слика

Декларација

 

чвора

 

црвено

 – 

црног

 

стабла

 

у

 

програмском

 

језику

 

Ради

 

реализације

 

операција

 

црвено

-

црног

 

стабла

 

листове

 

црвено

-

црног

 

стабла

 

третирамо

 

као

 

чворове

 

који

 

имају

 

исту

 

структуру

 

као

 

и

 

сви

 

остали

 

чворови

 

стабла

 

с

 

тим

 

што

 

су

 

црне

 

боје

а

 

поља

  Left 

и

  Right 

показују

 

на

 NullNode 

тј

на

 

самог

 

себе

јер

 

они

 

немају

 

десног

 

ни

 

левог

 

сина

 
 

 

162

1 4 .

 

Г Р А Ф О В С К И   А Л Г О Р И Т М И

 

 

Ц И Љ Е В И

 

У Ч Е Њ А

 

Када

 

ово поглавље проучите знаћете

 

1.

 

алгоритам

-

претрага у дубину,

 

2.

 

алгоритам

-

претрага у ширину.

 

 
 

Приликом моделирања сложенијих односа између објеката често се 

користе  графови.  Они  могу  да  моделирају  различите  односе  између 
објеката,  од  технике,  археологије  до  психологије,  укључујући  и 
најразличитије  проблеме  свакодневног  живота.  Неки  од  примера 
алгоритама у којима се користе графови су:

 

 

Налажење  најбољег  пута.  (Улице  одговарају  гранама,  а 
раскрснице  чворовима.  Свакој  улици

 

и  грани  може  се 

придодати  време  проласка  кроз  њих,  па  тако  долазимо  и  до 
тежинских графова.)

 

 

Проблем  прављења  распореда  часова  се  такође  може  схватити 
као  графовски  проблем.  Групе  се  дефинишу  као  чворови,  веза 
између  чворова  постоји  ако  студент  жели  да  похађа  две  или 
више група или ако имају заједничког предавача.

 

 

Први  проблем  са  којим  се  срећемо  код  конструкције  ових 

алгоритама  је  дефинисати  улазне  податке.  Претрага  графова  није 
тривијалан посао.

 

Постоје  две  основне  врсте  графовских  алгоритама.  То  су  алгоритми 

претрага

 

у

 

дубину

 

и 

претрага

 

у

 

ширину

 

1 4 . 1 .

 

А Л Г О Р И Т М И  

-  

Р А З А П И Њ У Ћ А  

С Т А Б Л А

 

 

Разапињуће

 

стабло

 

Т је стабло графа 

G

, такво да сваки чвор графа 

G

 

представља  и  чвор  стабла  Т. Такође знамо  да сваки  повезан  граф  има 

background image

 

164

Улазимо  у  ходник  увек  када  је  то  могуће.  Када  стигнемо  на 

раскрсницу први пут, оставимо каменчић, и одлазимо новим ходником. 
Када дођемо до раскрснице на којој

 

стоји каменчић, враћамо се истим 

путем назад и покушавамо да дођемо до нове раскрснице. Ако су  сви 
ходници који воде из те раскрснице прегледани, уклањамо каменчић и 
враћамо  се  путем  кроз  који  смо  први  пут  прошли.  Ову  раскрсницу 
више нећемо пролазити и настављамо шетњу.

 

 

Овакав  приступ  зове  се  претрага  у  дубину  DFS  (dept

-first-

search).  Ови 

алгоритми су једноставни и прилагодљиви рекурзивним алгоритмима.

 

 

1 4 . 3 .

 

А Л Г О Р И Т А М  

-  

С Т А Б Л О   П Р Е Т Р А Г Е   У  

Д У Б И Н У

 

 

Претпоставимо да су на почетку сви чворови у стаблу обележени са 

(нов), а када их употребимо ознаку мењамо у 

у

 

(употребљен).

 

 

1.

 

Означимо све чворове графа 

G

 

са 

n

2.

 

Изабрати

 

произвољан чвор 

0

v

G

 

и поставити га за корен 

стабла.

 

3.

 

Променити ознаку чвора 

0

v

 

са 

n

 

на 

у

 

и нека је 

0

v

v

4.

 

Понављати следећи поступак догод постоји чвор суседан чвору 

v

 

који није изабран. 

 

Изабрати

 

чвор 

w

 

који је суседан чвору 

v

Ако  чвор 

w

 

има  ознаку 

н

,  додати

 

грану 

,

v w

 

скупу  грана 

стабла,  и  променити  ознаку  чвора 

w

 

у 

у

,  нека  је 

w

v

,  и 

поновити корак 4.

 

Ако чвор 

w

 

има ознаку 

у

 

и ако 

w

 

није родитељ чвора 

v

, додати грану 

,

v w

 

скупу повратне гране и поновити корак 4.

 

5.

 

Ако је 

0

v

v

, нека је 

v

 

родитељ (

v

) и поновити корак 4.

 

6.

 

Крај.

 

 

До  год  било  који  чвор 

v

 

има  суседан  и  неискоришћен  чвор 

w

продужава се пут од чвора 

v

 

ка чвору 

w

. Када више не може да се иде 

даље, прелази се на корак 5 и враћа се на родитеља чвора 

v

.  

 
 

 

165

 

Алгоритам претраге у дубину

 

0

0

1

:

(

,

,

)

:

,

n

procedura pretraga u dubinu G

povezan graf sa

čv

orovima v

v

T

stablo koje sadrži samo

čvorove v

poseti v

procedura poseti v

čvor G

za svaki

čvor w susedan čvoru v i nije još iz T

po

čni

dodaj

čvor w i granu v w stablu T

poseti w

kraj

 

 

Пример

Уочимо граф на слици. Направити његово разапињуће стабло.

 

 

 

 

Бирамо

 

на

 

произвољан

 

начин

 

чвор

 

a

 

за

 

корен

Мењамо

 

ознаку

 

чвора

 

a

 

из

 

n  

у

  

y

 

Како

 

је

 

чвор

 

b

 

суседан

 

чвору

 

a

 

и

 

пошто

  

b

има

 

ознаку

 

n

додајемо

 

грану

,

a b

 

скупу

 

грана

 

и

 

мењамо

 

ознаку

 

чвора

 

b

 

из

 

n  

у

  

y

 

Са чвора 

b

 

прелазимо на чвор 

d

, јер је он суседан чвору 

b

. Ознаку 

н

 

чвора 

д

 

мењамо у 

у

, и додајемо грану 

,

b d

 

скупу грана. Како чвор 

d

 

има

 

више суседних чворова , бирамо између чворова 

a

f

 

или 

g

.

 

Од 

нашег избора зависи изглед стабла, што значи да претрага у дубину не 
даје  увек  исто  стабло.  Ако  изаберемо  чвор 

g

,  који  има  ознаку 

n

мењамо  је  у 

y

 

и  грану 

,

d g

 

додајемо  скупу  грана.    После  чвора

  g

 

background image

 

167

 

 
 

1 4 . 4 .

 

А Л Г О Р И Т М И  

-  

П Р Е Т Р А Г А   У  

Ш И Р И Н У

 

 

Алгоритам почиње од произвољног чвора који проглашавамо кореном 
стабла. Затим бирамо све чворове  који су њему суседни и формирамо 
гране. Ови чворови су нивоа 1. Сада ћемо узети сваки од чворова нивоа 
1  и  за  сваки  чвор  који  је  њему  суседан,  а  раније  није  узет  додајемо 
грану. Чворови које смо додали у овом кораку имају ниво 2. Поступак 
понављамо све док стаблу не доделимо све чворове графа 

G

.  

Овакав

 

приступ зове се претрага у ширину BFS (breadth

-first-search).

 

 
 

 

168

1 4 . 5 .

 

А Л Г О Р И Т А М  

-  

С Т А Б Л О   П Р Е Т Р А Г Е   У  

Ш И Р И Н У

 

Скуп чворова графа обележавамо са 

V

, грана са 

E

, а чворове стабла са 

T

V

и гране са 

T

E

 . 

1.

 

Изаберите произвољан чвор 

0

v

G

 

и поставити га за корен 

стабла. Нека је 

0

T

v

V

 

и ниво 

0

0

L v

2.

 

За сваки чвор 

T

v V

V

, такав да је чвор 

v

 

суседан чвору 

0

v

нека 

T

v V

0

,

T

v v

E

 

и 

 

1

L v

3.

 

Нека је 

1

i

4.

 

Изаберите 

T

j

v

V

, тако да је 

 

j

L v

i

5.

 

Изаберите 

T

v V

V

.  Ако  је  чвор 

v

 

суседан  чвору 

j

v

,  нека 

T

v V

0

,

T

v v

E

 

и 

 

1

L v

i

 

6.

 

Понављати корак 5 док не испитате све елементе скупа 

T

V

V

7.

 

Понављати кораке 4, 5 и 6 док не испитате све чворове 

j

v

 

за 

које је 

 

L v

i

8.

 

Нека је 

1

i

i

 

9.

 

Понављати кораке 4

-

8 све док не буде 

T

V

V

Алгоритам претраге у ширину

 

0

0

0

:

(

,

,

)

, ,

n

procedura pretraga u širinu G

povezan graf sa

čv

orovima v

v

T

stablo koje sadrži samo

čvorove v

L je prazno

definiši nivo L

čvora v

dok while L nije prazno

po

čni

pomeri prvi

čvor v iz L

za svaki susedni w od v

if w nije iz L i nije iz T on

(

)

,

da then

po

čni

dodaj

čvor w na kraj liste L i granu v w stablu T

kraj

 

 

background image

 

170

Тежински

 

граф

 

је

 

граф

 

у

 

коме

 

нас

 

не

 

занимају

 

само

 

чворови

 

и 

гране

 

већ  и  могућности  стизања  из  тачке 

A

 

у  тачку 

B

 

и  то  на 

најбољи  могући  начин.  Најбољи  начин  зависи  од  проблема  који 
треба  решити,  то  је  најкраћи  пут,  некада  најјефтинији, 
најбезбеднији, пут на коме се троши најмање енергије и сл. 

 

Из  тих  разлога  свакој  грани  се  додељује  реалан

 

број

његова

 

тежина

односно

 

мера

Ако

 

желимо

 

например

 

да

 

нађемо

 

најкраћи

 

пут

 

између

 

градова

 

тежина

 

је

 

удаљеност

или

 

цена

 

авионске

 

карте

 

која

 

спаја

 

удаљене

 

градова

 

и

 

сл

Тежина

 

не

 

мора

 

да

 

буде

 

позитиван

 

број

али

 

уобичајено

 

је

 

да

 

се

 

такав

 

користи

не

 

умањујући

 

општост

 

разматрања

Ако

 

нека

 

грана

 

не

 

постоји

тада

 

се

 

на

 

поменуту

 

позицију

 

ставља

 

неки

 

посебан

 

симбол

 

на пример 

Тежина разапетог стабла тежинског графа 

G

 

је  сума свих тежина, 

додељених  гранама  разапетог  стабла.  Минимално  разапето  стабло 
представља  разапето  стабло  графа 

G

,  тако  да  је  тежина  стабла 

T

 

мања  или  једнака  тежини  било  ког  другог  разапетог  стабла  графа 

G

 

 

 

Тежинска

 

матрица

 

је

 

матрица

 

код

 

које  на  позицију  пресека 

i

-

те 

врсте и ј

-

те колоне треба ставити тежину 

w

 

и

 

j

 

гране које спајаја 

i

-

ти  чвор  са  ј

-

тим  чвором.  Ако  нека  грана  не  постоји,  тада  се  на 

поменуту  позицију  ставља  неки  посебан  симбол 

У  случају 

бестежинских графова, за постојеће гране се подразумева тежина 1, 
док  за  непостојеће  гране  користи  се  0.  Тежинска  матрица  је  нека 
врста генерализације матрице суседства.

 

 

 

 

171

1 4 . 6 .

 

Д А Ј К А С Т Р И Н   А Л Г О Р И Т А М

 

 

Овај

 

алгоритам

 

даје

 

најкраће

 

растојање

 

између

 

1

v

 

и 

n

v

 
 

1.

 

Почети

 

од

 

1

, 0

v

променити

 

га

 

у

 

1

0, 0

v

 

и

 

овај

 

чвор

 

учинити

 

сталним

Остали

 

чворови

 

су

 

привремени

2.

 

Када  чвор 

,

k

r

v

m v

 

постане

 

сталан

за

 

сваки

 

чвор

 

који

 

је

 

суседан

 

са

 

k

v

додати

 

m

 

раздаљину

 

између

 

k

v

 

и

 

j

v

Ако је 

ова вредност мања од текуће раздаљине додељене чвору 

j

v

заменити

 

раздаљину

 

збиром

 

и

 

другу

 

координату

 

уређеног

 

пара

 

заменити

 

са

 

k

v

3.

 

Одредити  минималну  раздаљину  додељену  привременим 
чворовима. Одговарајући чвор учинити сталним. 

 

4.

 

Ако чвор 

n

v

 

није сталан вратити се на тачку 2.

 

5.

 

Ако чвор 

n

v

 

јесте сталан, раздаљина додељена 

n

v

 

је најкраће 

растојање од 

1

v

 

до 

n

v

6.

 

Да бисмо пронашли пут, кренимо од 

n

v

 

и нађимо претходни 

чвор у путу

 (

друга координата). За сваки 

j

v

 

пут, наћи његов 

претходни  чвор  на  путу  док  се  не  стигне  до 

1

v

.  Обрнутим 

обиласком ових чворова добија се најкраћи пут.

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

background image

 

173

Кренућемо

 

од

 

A

 

ка

 

осталим

 

чворовима

Када

 

стигнемо

 

до

 

чвора, 

 

прва

 

компонента

 

уређеног

 

пара

 

означава

 

дужину

 

најкраћег

 

пута

 

до

 

тог

 

чвора

 

у

 

том

 

тренутку

а

 

друга

 

компонента

 

означава

 

предходни

 

чвор

 

на

 

најкраћем

 

путу

Док

 

се

 

пут

 

не

 

пронађе

 

прва

 

компонента

 

је

 

а

 

друга

 

је

 0.  

 

 

 

Пошто

 

су  чворови 

B

 

и 

C

 

суседни  са 

A

,  користимо  корак  2  да 

вредност

 

5,

A

 

доделимо  уређеном  пару  чвора 

B

,  вредност

 

6,

A

 

доделимо  уређеном  пару  чвора 

C

.  Коришћењем  корака  3  узимамо 

мању од додељних вредности, а то је 5 и 

5,

B

A

 

постаје сталан чвор.

 

 

 

 

 

Враћајући  се  на  корак2,  разматрамо  привремене  чворове 

, , ,

C D E F

 

суседне са 

B

. У сваком случају додајмо раздаљину 

AB

 

раздаљини до 

 

174

посматраних чворова. За

 

C

 

имамо

  5 3

8

 

за

 

D

 

имамо

  5 7 12

за

 

E

 

имамо

  5 2

7

 

 

и

 

за

 

F

 

имамо

  5 10 15

Пошто

 

нова

 

раздаљина

 

ка

 

C

 

није

 

мања

 

од

 

оне

 

која

 

је

 

већ

 

додељена

 

овом

 

чвору

не

 

мењамо

 

вредност

 

6,

C

A

Нове

 

вредности

 

за

 

чворове

 

, ,

D E F

 

су

 

мање  од 

предходних

 

и

 

ове вредности су додељене проласком пута 

B

и

 

постају

 

нове

 

12,

;

7,

;

15,

D

B

E

B

F

B

 

 

 

 

Користећи  корак  3  узимамо  најмању  од  раздаљина  додељених 
привременим чворовима ( 6,12,15,7 ), а то је 6 и 

6,

C

A

 

постаје сталан 

чвор.

 

 

 

Сада

 

користимо

 

нови

 

стални

 

чвор

 

C

Корак

 2 

не

 

даје

 

нове

 

промене

а

 

кораком

 3 

чвор

  

7,

E

B

 

постаје

 

нови

 

стални

 

чвор

background image

 

176

 

 

 

 

 

 

 

177

 

 

 

 

 

background image

 

179

 

 

 
 

 

 

 

180

 

 

 

background image

 

182

 

 
 

 

 

Значи најјефтинија

 

је карта преко Чикага и кошта 2300

 $. 

 

4.

 

Дат

 

је

 

граф

 

на

 

слици

са

 

тежинама

 

између

 

два

 

чвора

Наћи

 

минимални

 

пут

 

од

 

чвора

 

a

 

до

 

чвора

 

z

 
 

 

183

 

 

 

 
 

 

 

background image

185 

1 5 .

 

Б У Л О В А

 

А Л Г Е Б Р А

 

 

Ц И Љ Е В И

 

У Ч Е Њ А

 

Када

 

ово

 

поглавље

 

проучите

 

моћи

 

ћете

 

да

 

1.

 

Дефинишете

 

Булову

 

алгебру

2.

 

знате

 

дефиниције

аксиоме

 

и

 

теореме

 

ове

 

алгебре

3.

 

дефинишете

 

бинарну

 

Булову

 

алгебру

4.

 

знате

 

да

 

направите

 

дисјунктивну

 

и

 

коњуктивну

 

форму

 

Булових

 

функција

 

1 5 . 1

 

О С Н О В Н И

 

П О Ј М О В И

 

Закони

 

логичког

 

доношења

 

одлука

 

заснивају

 

се

 

на

 

тврђењима

 

која

 

могу

 

бити

 

тачна

 

и

 

нетачна

.

 

Трвђења

 

никада

 

не

 

могу

 

бити

 

делимично

 

тачна

 

или

 

делимично

 

нетачна

Алгебра

 

која

 

анализира

 

оваква

 

тврђења

сажима

 

математичку

 

логику

 

и

 

теорију

 

скупова

 

и

 

даје

 

теоријску

 

основу

 

савремених

 

рачунарских

 

наука

 

назива

 

се

 

Булова

 

алгебра

 

186 

 

 

Творац

 

ове

 

алгебре

 

је

 

Џорџ

 

Бул

 (

Георге

 

Бооле

,  1815 - 1864) 

енглески

 

математичар

 

и

 

филозоф

Бул

 

је

 

пришао

 

логици

 

на

 

нов

 

начин

сажимајући

 

је

 

у

 

просту

 

алгебру

претварајући

 

логику

 

у

 

математику

На

 

тај

 

начин

 

створене

 

су

 

нове

 

математичке

 

дисциплине

   

математичка

 

логика

 

или

 

симболична

 

логика

 

и

 

алгебра

 

логике

 

која

 

је

 

названа

 

Булова

 

алгебра

Нажалост

није

 

живео

 

дуго

умро

 

је

 

у

  49-

ој

 

години

 

живота

од

 

прехладе

коју

 

је

 

добио

 

тако

 

што

 

је

 

пешачио

 

две

 

миље

 

по

 

киши

како

 

би

 

стигао

 

на

 

предавање

и

 

предавао

 

је

 

у

 

мокрој

 

одећи

Све

 

до

 

касних

 

тридесетих

 

година

 

његова

 

алгебра

 

није

 

имала

 

никакве

 

практичне

 

примене

.  1937. 

године

 

научници

 

Накашима

 

и

 

годину

 

дана

 

касније

 

Шенон

 

су

 

искористили

 

Булову

 

аглебру

 

за

 

анализу

 

мрежа

 

са

 

релејима

Телефонија

 

је

 

тих

 

година

 

била

 

у

 

брзом

 

развоју

па

 

је

 

било

 

потребно

 

користити

 

неки

 

математички

 

апарат

 

којим

 

би

 

се

 

описивале

 

жељене

 

комуникације

 

и

 

начин

 

остваривања

 

веза

Од

 

овог

 

тренутка

 

Булова

 

алгебра

 

доживљава

 

своју

 

експанзију

 
 
 
 

background image

188 

1 5 . 3

 

О С Н О В Н Е

 

Т Е О Р Е М Е

 

 

Нека

 

су

 

, ,

a b c

 

елементи

 

Булове

 

алгебре

 

B

тада

 

важе

 

следеће

 

теореме

односно

 

закони

 

 

закон

 

асоцијације

    

,

a b

c

a

b

c

 

*

*

*

*

a b

c

a

b c

 

 

закон

 

идемпотенције

 

 

a

a

a

                  *

a a

a

 

 

закон

 

нуле

                      

1 1

a

 

                    * 0

0

a

 

 

закон

 

апсорбције

 

  

*

a

a b

a

           

*

a

a b

a

 

 

закон

 

инволутивности

 

   

a

a

 

 

Де

 

Морганови

 

закони

   

*

a b

a b

       

*

a b

a

b

 

 

закон

 

комплемента

 

за

 

неутралне

 

еле

менте

     

0

1

          

1

0

 

 

закон

 

сажимања

 

   

*

*

a b a b

a

 

*

a b

a b

a

  

 

Ако

 

је

 

A

 

Булов

 

израз

под

 

дуалним

 

Буловим

 

изразом

подразумева

 

се

 

израз

 

који

 

се

 

добија

 

када

 

се

 

у

 

изразу

 

A

 

операције

  + 

замени

 

са

  * 

и

 

обрнуто

а

 

константе

 

се

 

замене

 

њиховим

 

комплементима

1 5 . 4

 

Б И Н А Р Н А

 

Б У Л О В А

 

А Л Г Е Б Р А

 

Иако

 

Булова

 

алгебра

 

може

 

да

 

буде

 

дефинисана

 

и

 

на

 

бесконачном

 

скупу

 

елемената

њена

 

је

 

примена

 

у

 

дигиталној

 

техници

 

ограничена

 

на

 

алгебру

 

на

 

бинарном

 

скупу

 {0,1}. 

Како

 

у

 

алгебрској

 

логици

 

променљиве

 

било

 

да

 

су

 

независне

 

или

 

зависне

имају

 

само

 

вредности

 

нуле

 (0) 

или

 

јединице

(1), 

из

 

чега

 

видимо

 

да

 

се

 

ради

 

о

 

дискретним

 

променљивим

 

и

 

дискретним

 

функцијама

.  

Ако

 

се

 

на

 

скупу

 

 

0,1

B

 

дефинишу

 

операције

 +,* ’ , 

односно

  , ,

  

 , 

према

 

таблицама

добија

 

се

 

Булова

 

алгебра

.

 

 

189 

 

и

 0’=1, 1’=0. 

 
 
 
 

1 5 . 5

 

Б У Л О В Е

 

Ф У Н К Ц И Ј Е

 

Нека

 

је

 

1

2

,

,

n

F

F p p

p

 

нека

 

формула

  . 

Исказна

 

слова

 

1

2

,

,

n

p p

p

 

могу

 

да

 

узимају

 

вредности

 1 

и

 0.  

 

 

Булова

 

функција

 

је

 

свако

 

пресликавање

 

:

n

F B

B

 

Булове

 

функције

 

са

 

једном

 

променљивом

 

дате

 

су

 

таблицом

 

 

п

 

F1 

F2 

F3 

F4 

 
 
 
 
 
 
 
 

Таблица

 

за

 

Булове

 

функције

 

има

 

2

n

 

променљивих

 

и

 

2

2

n

 

функција

јер

 

је

 

2

2

2

2

n

n

V

 

Из

 

таблице

 

се

 

може

 

видети

 

да

 

су

 

8, 5, 7

F

F

F

и

  10

F

 

редом

 

дисјункција

конјункција

 , 

импликација

 

и

 

еквиваленција

Све

 

Булове

 

функције

 

могу

 

се

 

представити

 

исказним

 

формулама

 

1 5 . 6

 

Д И С Ј У Н К Т И В Н Е

 

И

 

К О Н Ј У Н К Т И В Н Е

 

Ф О Р М Е

 

background image

191 

 
 

П И Т А Њ А

 

И   З А Д А Ц И   З А

 

П Р О В Е Р У   З Н А Њ А

 

1.

 

Шта

 

је

 

Булова

 

алгебра

2.

 

Навести

 

основне

 

аксиоме

3.

 

Навести

 

и

 

доказати

 

теореме

 

Булове

 

алгебре

 

4.

 

Шта

 

су

 

ДФ

 

и

 

КФ

5.

 

Доказати следеће законе:

 

Закон

 

идемпотенције

 

 

 

a

a

a

 

 

Решење

 

 

*1

*

*

0

a

a

a

a

neutralni element

a

a

a

a

inverzni element

a

a

a

distribucija

a

inverzni element

a

neutralni element

 

 

Закон нуле

 

  * 0

0

a

 

Решење

 

* 0

*0 0

* 0

*

* 0

*

a

a

neutralni element

a

a a

inverzni element

a

a

distribucija

a a

neutralni element

a

inverzni element

 

 

Закон апсорбције

 

а

)  

*

a

a b

a

 

б

*

a

a b

a

 

Решење

 

а)                                                      б)

 

192 

*

*1

*

* 1

*1

a

a b

a

a b

neutralni element

a

b

distribucija

a

zakon nule

a

neutralni element

 

*

0 *

0 *

0

a

a b

a

a b

neutralni element

a

b

distribucija

a

zakon nule

a

neutralni element

 

 

Закон

 

инволутивности

   

a

a

   

 

Решење

 

Аксиома о инверзном елементу каже 

 

1

*

*

0

a

a

a

a

a a

a a

 

Ако уведемо 

x

a

, онда је 

 

1

*

*

0

x

a

a

x

x a

a x

 

па је 

a

x

, односно 

a

a

 

Закон

 

комплемента

 

за

 

неутралне

 

елементе   а) 

0

1

              

б) 

1

0

 

 

Решење

 

а)                                                                  б) 

 

0

*

1

a a

inverzni element

a

a

De Morganovo pravilo

a

a

zakon involutivnosti

inverzni element

    

background image

194 

 

7.

 

Одредити истинитосну таблицу функција:

 

а)  

1

f

pq

pr

qr

               

б) 

2

f

p

qr

Решење

p

 

q

 

r

 

1

f

 

2

f

 

 

К Љ У Ч Н E   Р Е Ч И

 

 

Булова

 

алгебра

 

Булове

 

функције

  

ДФ

 

КФ

 

 

Л И Т Е РАТ У РА

 

 
 
 

1.

 

И.  Ковачевић,  З.  Мишковић,  А.  Савић, 

Математика  за 

инжењере

,  Висока  школа  електротехнике  и  рачунарства, 

Београд, 2008.

 

2.

 

M. T

омашевић, 

Структуре података

Академска мисао

, 2005.  

3.

 

Ј.А.  Андерсон, 

Дискретна  математика  са  комбинаториком

Рачунарски факултет, Београд, 2005.

 

4.

 

Д. Цветковић, 

Дискретна математика

, Просвета, Ниш, 1996.

 

5.

 

Д. Цветковић, 

Дискретне математичке структуре

Рачунарски 

факултет, Београд, 2004.

 

6.

 

Д.  Цветковић,  С.  Симић,  В.  Балтић,  М.  Ћирић, 

Основе 

комбинаторике и теорије графова

, Београд, 2008.

 

7.

 

Д. Цветковић, 

Теорија графова и њене примене

, Научна књига, 

Београд, 1990.

 

8.

 

K. H. Rosen, 

Discrete Mathematics and Its Applications

, Mc Grew 

Hill, 2003. 

9.

 

В. Петровић, 

Теорија графова

, Нови Сад, 1998.

 

10.

 

Б.  Боричић,  М.  Ивовић

Д.  Аздељковић,  И.

 

Спасић

Збирка 

задатака из математике

Економски факултет

Београд 2003

11.

 

М.  Меркле

МАТЕМАТИЧКА  АНАЛИЗА  теорија  и  хиљаду 

задатака

Академска мисао

Београд 2005

 

Želiš da pročitaš svih 203 strana?

Prijavi se i preuzmi ceo dokument.

Ovaj materijal je namenjen za učenje i pripremu, ne za predaju.

Slični dokumenti