Kierunek: informatyka, studia dzienne magisterskie Algorytmy i struklwy danych, nem. 11_
Pokaż, jak wygląda drzewo wywołań funkcji GCl), gdy wywołamy ją następująco: CCO (15. V)
7. Dla poniższej sieci połączeń między miastami wyznaczyć minimalną ścieżkę z miasta a do k, posługując strategią programowania dynamicznego. Podaj wszystkie optymalne rozwiązania.
8. Przypuśćmy, żc w dyskretnym problemie plecakowym kolejność przedmiotów uporządkowanych rosnąco według ciężaru jest taka sama, jak przy uporządkowaniu malejącym według wartości. Podaj efektywny algorytm znajdujący optymalne rozwiązanie dla lej wersji problemu plecakowego i uzasadnij jego poprawność.
9. Zaprojektuj algorytm typu dziel i zwyciężaj do znajdowania /7-tej co do wielkości liczby spośród m liczb (liczby tc nic są posortowane), gdzie n jest zmienną. Wskazówka! Wybierz dowolna liczbę z ciągu, i następnie podziel wyjściowy ciąg liczb na trzy podciągi: mniejsze od wybranej liczby, równe jej i większe od niej. Podciągi prawy i lewy uporządkuj rosnąco, dzieląc jc dotąd dopóki sortowanie stanic się oczywiste, a następnie przystąp do fazy łączenia. Pamiętaj, żc masz znaleźć tylko /i-tą co do wielkości liczbę, co oznacza, żc możesz w odpowiednim momencie łączenie przerwać. Zilustruj każdy krok swojego pomysłu na przykładzie przedstawionego ciągu liczb, w którym masz znaleźć 5-tą co do wielkości liczbę: -1, 24, 21, 5,-2, 8, 9, 25, 4, 17 16.
10. Udowodnij, że
{(x > 0) a (y > 0)} spec zf— 0;
Uf—Xj repeat z<—z + y;
Uf—u - 1; until u | 0 endspec {zf-x*y}