Zestawienie tematów objętych zakresem egzaminu z budowy i analizy algorytmów

background image

1 / 2

Zestawienie tematów objętych zakresem egzaminu z budowy i analizy algorytmów

Nr
zad.

Tematy

Przykładowe zadania egz.

1.

Schematy blokowe podstawowych struktur sterujących:
wyboru warunkowego, pętli „dopóki”, pętli „aż do”, pętli
ograniczonej.

Przerabianie schematu algorytmu opartego na pętli
„dopóki” na schemat oparty na pętli „aż do” i odwrotnie.

Budowanie pętli ograniczonej w oparciu o pętlę
warunkową i zmienną licznikową.

Podstawowe struktur danych: tablice jedno- i
wielowymiarowe, rekordy, wskaźnikowe listy rekordów,
ukorzenione drzewa rekordów (rozróżnianie struktur
statycznych i dynamicznych).

Budowa prostych algorytmów wykorzystujących
podstawowe struktury sterujące i struktury danych –
organizowanie współpracy pomiędzy strukturą danych a
strukturą sterującą, np. budowa algorytmów wyszuki-
wania wartości ekstremalnych (wielkości lub położenia),
sumowania, mnożenia i normalizacji liczbowych
elementów zbioru danych wejściowych umieszczonych w
różnych strukturach danych.

Opisywanie algorytmu za pomocą schematu blokowego i
pseudojęzyka programowania – przechodzenie z jednego
sposobu opisu na drugi.

Utworzono jednokierunkową listę wskaźnikową z
rekordów o trzech polach: A1, A2 i NST.
Pola A1 i A2 są typu liczbowego, a pole NST jest
wskaźnikiem na kolejny rekord. We wszystkich
rekordach listy pola A1 i A2 wypełniono liczbami.
W oparciu o pętlę (iterację) warunkową typu „dopóki”
narysuj schemat blokowy algorytmu do wyznaczenia
najmniejszej spośród takich liczb zapamiętanych w
polach A1, które są większe lub równe liczbie z pola A2
tego samego rekordu.
Odwołanie do zawartości pola A w rekordzie
wskazanym przez wskaźnik np. X oznacz A[X].
Przyjmij, że zmienna wskazująca na pierwszy rekord
nazywa się GA a pole wskaźnikowe NST w ostatnim
rekordzie na liście zawiera wartość NIL.
Wprowadź odpowiednie zmienne pomocnicze i
zapewnij poprawne działanie algorytmu dla pustej listy.

2.

Schemat działania stosu i kolejki, które zbudowano w
oparciu o listę wskaźnikową (realizacja operacji
wstawiania i usuwania rekordów z tych struktur).

Zasada działania algorytmów rekurencyjnych.

Schematy algorytmów przeszukiwania podstawowych
struktur danych (współpraca struktur sterujących ze
strukturami danych): pętle zagnieżdżone dla tablic
wielowymiarowych, iteracyjne algorytmy przeglądu
drzewa w głąb i wszerz, rekurencyjny algorytm przeglądu
drzewa binarnego.

Budowa drzewa BST.

Podstawowe algorytmy sortowania: bąbelkowego, ze
scalaniem i drzewiastego (szczegóły działania).

Algorytm binarnego wyszukiwania (przez połowienie)
elementu z listy uporządkowanej (szczegóły działania).

Przybliżony algorytm wyznaczania upakowania plecaka
oparty na metodzie zachłannej (szczegóły działania).

a)

Z jakich obiektów i jak powiązanych może być
zbudowana struktura danych zwana ukorzenionym
drzewem binarnym? Jaka specyficzna struktura
sterująca w algorytmie jest często powiązana z
drzewiastą strukturą danych? Jaka cecha drzewa
narzuca to pokrewieństwo? Zbuduj drzewo BST dla
ciągu liczb: 7, 4, 6, 2, 11, 5, 8, 12, 9. Podaj ile liści
będzie zawierało to drzewo.

b)

Opisz, w jaki sposób w oparciu o wskaźnikową listę
jednokierunkową można by zbudować strukturę
danych zwaną kolejką. Opisz realizację podstawo-
wych operacji, które pozwalałyby modyfikować tę
strukturę zgodnie z przyjętymi w kolejce zasadami.
Jakie są te zasady? Przyjmij w opisie, że lista
jednokierunkowa utworzona jest z rekordów
posiadających tylko dwa pola: kluczowe i
wskaźnikowe.

3.

Cztery metody budowania algorytmów: „wędruj i
sprawdzaj”, „dziel i zwyciężaj”, „zachłanna”,
„programowanie dynamiczne” – schemat działania i
przykładowe realizacje wśród algorytmów omówionych
na wykładach (zapis w pseudojęzyku).

Demonstracja działania przykładowych algorytmów na
podanych zestawach danych wejściowych (krok po
kroku).

Podaj charakterystyczne cechy algorytmów opartych na
metodzie „programowania dynamicznego”. Opisz krok
po kroku (podając, co jest wyznaczane, zapamiętywane
i z czym powiązane) jak przebiega realizacja algorytmu
wykorzystującego tę metodę w celu znalezienia
„najkrótszej drogi” z punktu A do punktu J w podanej
sieci połączeń:

2

5

2

2

3

3

4

6

3

6

2

1

A

C

B

D

F

E

G

J

H

I

3

1

4

3

Podaj na koniec długość wyznaczonej drogi i jej
przebieg. Wypunktuj te cechy użytego algorytmu, które
wskazują na zastosowanie programowania
dynamicznego.

background image

2 / 2

Nr
zad.

Tematy

Przykładowe zadania egz.

4.

Definicje podstawowe dla asymptotycznej analizy
złożoności czasowej algorytmów prowadzonej w
najgorszym przypadku.

Formalne porównywanie asymptotycznych rzędów
złożoności.

Posługiwanie się rachunkiem O(

) w zakresie: mnożenia

rzędu złożoności przez wartość niezależną od rozmiaru
danych wejściowych, mnożenia go przez wartość funkcji
zależnej od rozmiaru danych, dodawania i mnożenia
rzędów złożoności przez siebie.

Powiązanie elementów rachunku O(

) ze strukturami

sterującymi analizowanych algorytmów.

Wyznaczanie rzędu asymptotycznej złożoności algorytmu
w notacji O(

) na podstawie podanego schematu

blokowego lub opisu w pseudojęzyku (algorytm może
zawierać podprogramy o podanych rzędach złożoności).

Wyznacz rząd złożoność w najgorszym przypadku dla
algorytmu o podanym schemacie:

Q?

O(

lg )

N

N

2

O(

)

N

3

C

N

lg razy

N

N

lg razy

petla

petla

Przy pętlach podano liczbę ich powtórzeń. Przyjmij, że
N oznacza rozmiar zadania a C pewną stałą niezależną
od rozmiaru danych wejściowych. Przyjmij, że wybór
warunkowy Q zależy od danych wejściowych. Posługuj
się rachunkiem O(

), formalnie porównuj rzędy

złożoności i uzasadniaj postępowanie.

5.

Rozstrzyganie całkowitej i częściowej poprawności
algorytmu: definicje i rozróżnienie, istota metody
niezmienników i zbieżników.

Relacja pomiędzy analizą złożoności algorytmu a analizą
złożoności problemu algorytmicznego.

Podział na problemy o złożoności wielomianowej i ponad
wielomianowej: formalne określenie, teoretyczne i
praktyczne znaczenie podziału.

Podział na klasy problemów P, NP i NP-zupełne: cechy
charakterystyczne problemów z tych klas, relacje
pomiędzy wymienionymi klasami, rozstrzyganie
podstawowego problemu algorytmiki „P=NP”.

Podział problemów algorytmicznych na rozstrzygalne
(obliczalne) i nierozstrzygalne. Przykłady
nierozstrzygalnych problemów algorytmicznych.

Maszyna Turinga: czym jest, budowa i zastosowanie.

Teza Churcha-Turinga i jej znaczenie dla analizy
problemów algorytmicznych.

Automaty skończenie stanowe: czym są, a czym nie są,
budowa i zastosowanie.

a)

Wyjaśnij, na czym polega problem algorytmiczny
zwany problemem „stopu w algorytmie”. Podaj
cechy charakterystyczne tego problemu i określ, do
jakiej klasy problemów algorytmicznych on należy.
Krótko przedstaw jakiś inny problem z tej samej
klasy.

b)

Wyjaśnij związki pomiędzy klasami problemów
algorytmicznych: P, NP, i NP-zupełne.
Posługując się maszyną Turinga wyjaśnij pojęcie
niedeterministycznej złożoności wielomianowej.

c)

Skonstruuj diagram przejść dla automatu skończenie
stanowego, który pracując nad alfabetem {x, y, z}
potrafi stwierdzić w ciągu danych wejściowych
wystąpienie przynajmniej raz sekwencji „zyyx”.

Typowa punktacja zadań:

Nr zad.

Liczba punktów

1.

20

2.

15

3.

15

4.

15

5.

10

Suma:

75

J. Sikorski

w roku akademickim 2011/2012


Wyszukiwarka

Podobne podstrony:
Zestawienie tematów objętych zakresem egzaminu z BAL u
ZESTAW TEMATOW NA WEWNETRZNY EGZAMIN MATURALNY Z JEZYKA POLSKIEGO W ZESPOLE SZKOL TECHNICZNYCH IM
Zestaw tematów na egzamin
Analiza Algorytmów Ćwiczenia
opracowane zestawy, OPRACOWANIE PYTAŃ NA EGZAMIN
Analiza algorytmow ukrywania w Nieznany
Prawo Gospodarcze Zakres egzaminu, Prawo
odpowiedzi - zestaw VI, Fryzjerstwo, Test, Egzamin państwowy
BYT zestaw7, PJWSTK, 0sem, BYT, egzaminy
egzamin szpulak analiza finansowa, 2008 2009
Zestaw pytań i zagadnień do egzaminu z Gazownictwa, Wiertnictwo - AGH
A V Aho, J E Hopcroft,J D Ullman Algorytmy Projektowanie I Analiza Algorytmow Komputerowych
IO-EgzaminBAMBOLEO, SEMESTRY, Sem 6, Algorytmy Rownolegle
zestaw kolowy, Cel i zakres badań
BYT zestaw4, PJWSTK, 0sem, BYT, egzaminy
Zestaw 1, Opracowane zagadnienia na egzamin
Projekt nr 2, Zestaw tematów projekt nr 2

więcej podobnych podstron