ALS - 001-000 - Zadania - ZAJECIA, Informatyka - uczelnia, WWSI i WAT, wwsi, SEM II, Algorytmy i Struktury Danych


Zadanie 1.

Uporządkuj rosnąco, ze względu na rząd wielkości następujące funkcje:

Odpowiedzi do zadania 1.

  1. 0x01 graphic
    < 0x01 graphic
    < 0x01 graphic
    < 0x01 graphic

  2. 0x01 graphic
    < 0x01 graphic
    < 0x01 graphic
    < 0x01 graphic
    < 0x01 graphic

  3. 0x01 graphic
    , 0x01 graphic
    , 0x01 graphic
    , 0x01 graphic
    , 0x01 graphic

Zadanie 2.

Podaj możliwie najlepsze oszacowanie następującej funkcji stosując notację O:

Funkcja

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

Odpowiedzi do zadania 2.

Oszacowanie

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

Zadanie 3.

Podaj możliwie proste oszacowanie następującej funkcji stosując notację Θ:

Funkcja

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

Odpowiedzi do zadania 3.

Oszacowanie

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

Notacja Θ

Zapisujemy jako: f(n) = Θ(g(n))

Taki zapis oznacza, że f jest tego samego rzędu co g, czyli istnieją takie stałe c1 i c2 że:

c1 · |g(n)| ≤ |f(n)| c2 · |g(n)|

Czyli funkcja g(n) jest ograniczeniem górnym dla f (n).

Upewniamy się, że 0x01 graphic
lub konkretniej 0x01 graphic

Przykładowy wykres:

Zadanie 4.

Algorytm A mający złożoność obliczeniową 0x01 graphic

wykonuje się na pewnym

komputerze K dla n=100 w czasie 5 sekund.

Jak duże zadanie będziemy w

stanie rozwiązać w ciągu 5 sekund na komputerze K1

dokładnie 1024 razy szybszym niż K?

Zadanie 5.

Ile czasu zajmie wykonanie zadania dla danych wejściowych

rozmiaru 10 algorytmem A

o złożoności 0x01 graphic
wiedząc, że wykonanie zadania o

rozmiarze 12 zajmuje (przy użyciu tego samego algorytmu)

864 sekundy?

Odpowiedź do zadania 5.

Złożoność algorytmu A dla danych rozmiaru n określona jest

przez funkcję 0x01 graphic
.

Zatem dla danych rozmiaru 12 algorytm ten wykona 0x01 graphic

operacji dominujących.

Czas, jaki jest potrzebny do wykonania zadania o rozmiarze12,

wynosi dokładnie 864 sekundy, czyli wykonanie jednej operacji

dominującej

zajmuje 0x01 graphic
.

Dla danych rozmiaru 10 algorytm A wykona dokładnie 0x01 graphic

operacji dominujących, co ostatecznie zajmie 0x01 graphic
sekund.

Zadanie 6.

Na komputerze K wykonanie algorytmu A dla danych o rozmiarze 6

zajmuje 8 sekund. Złożoność tego algorytmu opisuje funkcja

0x01 graphic
.

Ile czasu będzie potrzebował komputer K1,

dokładnie 1024 razy szybszy od komputera K,

do wykonania algorytmu A dla danych rozmiaru 20?

Odpowiedź do zadania 6.

0x01 graphic
sekund

Zadanie 7.

Mamy do posortowania tablicę zawierającą milion (106) liczb.

Do dyspozycji mamy

Komputer K1 - wykonujący 1 milion (106) operacji na sekundę,

Komputer K2 - wykonujący 100 milionów (108) operacji na sekundę.

Na komputerze K1 sortujemy przy użyciu algorytmu sortowania

przez scalanie 0x01 graphic

Na komputerze K2 sortujemy przy użyciu algorytmu sortowania

przez wstawianie 0x01 graphic

Który, komputer wykona zadanie sortowania w krótszym czasie?

Odpowiedź do zadania 7.

Komputer osobisty : wykonuje 1 milion (106) operacji na sekundę

Sortujemy algorytmem przez scalanie : 0x01 graphic

0x01 graphic

Superkomputer : wykonuje 100 milionów (108) operacji na sekundę.

Sortujemy algorytmem przez wstawianie: 0x01 graphic

T(106) = 2 * (106)2 / 108= 20 000 sekund ≈5.56 godzin

0x01 graphic

Komputer osobisty wykona zadanie 20 razy szybciej.

UWAGA: Sortowanie przez wstawianie jest szybsze od

sortowania przez scalanie dla małych n

Zadanie 8.

Dla podanego poniżej fragmentu kodu algorytmu określ jego

złożoność asymptotyczną przy użyciu notacji 0x01 graphic

for (i=sum=0;i<n;i++)

sum += a[i];

Pętla for wykonuje się n razy a podczas każdej iteracji 2 przypisania, jedno sum drugie i (2n) oraz 2 przypisania w deklaracji

2+2n = O(n)

Zadanie 9.

Dla podanego poniżej fragmentu kodu algorytmu określ jego złożoność asymptotyczną przy użyciu notacji 0x01 graphic
:

for (i = 0; i < n; i++){

for(j = 1, sum = a[0]; j<=i; j++)

sum += a[j];

cout<<"suma podtablicy od 0 do "<< i <<" to <<sum<<endl;

Zadanie 10.

Dla K=3, L=6 Podaj ile wynosi X.

Określ jego złożoność asymptotyczną przy użyciu notacji 0x01 graphic

0x01 graphic

1. Zaimplementuj algorytm przy pomocy Dev C++ 4.9.9.2

2. Określ (wraz z dowodem matematycznym) złożoność algorytmu przy użyciu notacji O.

ODPOWIEDZI DO ZADAŃ

Zadanie 4.

Złożoność algorytmu A dla danych rozmiaru n określona jest przez zależność 0x01 graphic
. Dla danych rozmiaru 100 algorytm ten wykona 0x01 graphic
operacji dominujących. Czas jaki jest potrzebny do wykonania zadania o rozmiarze 100 na komputerze K wynosi dokładnie 5 sekund. To samo zadanie (czyli 0x01 graphic
operacje dominujące) komputer K1 wykona w 0x01 graphic
sekundy. Zatem w ciągu dokładnie 5 sekund komputer K1 wykona 0x01 graphic
operacje dominujące, co ostatecznie odpowiada rozmiarowi danych wejściowych równemu 0x01 graphic
.

Zadanie 8.

Pętla for wykonuje się n razy a podczas każdej iteracji 2 przypisania, jedno sum drugie i (2n) oraz 2 przypisania w deklaracji

2+2n = O(n)

Zadanie 9.

Inicjalizacja zmiennej i,

Pętla zewnętrzna wykonywana jest n razy,. Za każdym razem wykonywana jest iteracja pętli wewnętrznej, instrukcja drukowania oraz przypisania zmiennych i, j, sum. Pętla wewnętrzna wykonywana jest i razy dla każdego 0x01 graphic
przy czym w każdej iteracji wykonywane są dwa przypisania: jedno zmiennej sum , drugie zmiennej j.

Liczba przypisań w całym programie wynosi więc:

0x01 graphic



Wyszukiwarka

Podobne podstrony:
ALS - 009-000 - Zajęcia - Sortowanie bąbelkowe, Informatyka - uczelnia, WWSI i WAT, wwsi, SEM II, Al
ALS - 004-000 - Zajęcia - Listy - teoria, Informatyka - uczelnia, WWSI i WAT, wwsi, SEM II, Algorytm
ALS - 002-001, Informatyka - uczelnia, WWSI i WAT, wwsi, SEM II, Algorytmy i Struktury Danych
ALS - 004-000b - Zajęcia - STOS - LIFO - Ćwiczenie ONP, Informatyka - uczelnia, WWSI i WAT, wwsi, SE
ALS - 005-001 - Program Stos ONP-RPN, Informatyka - uczelnia, WWSI i WAT, wwsi, SEM II, Algorytmy i
ALS - 009-005 - Program Sortowanie INSERTION SORT, Informatyka - uczelnia, WWSI i WAT, wwsi, SEM II,
ALS - 007-005a - Program drzewa BST, Informatyka - uczelnia, WWSI i WAT, wwsi, SEM II, Algorytmy i S
ALS - 007-002 - Program drzewa BST - AVL, Informatyka - uczelnia, WWSI i WAT, wwsi, SEM II, Algorytm
ALS - 004-002 - Program - Lista - Sito Eratostenesa, Informatyka - uczelnia, WWSI i WAT, wwsi, SEM I
Cw2008, Studia Informatyka PK, Semestr II, Algorytmy i struktury danych
matematyka dyskretna sciaga, Informatyka - uczelnia, WWSI i WAT, wwsi
AiSD Egzamin Zadania, !!!Uczelnia, wsti, materialy, II SEM, algorytmy struktury danych
algo zadania egzamin, !!!Uczelnia, wsti, materialy, II SEM, algorytmy struktury danych, egzamin
Sciaga Przykladowe Zadania, !!!Uczelnia, wsti, materialy, II SEM, algorytmy struktury danych
Algorytmy i struktury danych Wykład 1 Reprezentacja informacji w komputerze
ukl 74xx, Informatyka PWr, Algorytmy i Struktury Danych, Architektura Systemów Komputerowych, Archit
cw 0 1, pwr, informatyka i zarządzanie, Informatyka, algorytmy i struktury danych
kolokwium1sciaga, Studia Informatyka 2011, Semestr 2, Algorytmy i struktury danych
Zadanie przedzial ufnosci dla frakcji, TŻ, SEMI, SEM II, statystyka

więcej podobnych podstron