Frage |
Antworten |
1. Podstawowe operacje programu Która z poniższych operacji nie jest wymieniona jako podstawowa operacja realizowana przez program? Lernen beginnen
|
|
wysyłanie danych przez sieć
|
|
|
2. Generacje języków programowania Do której generacji języków programowania zaliczają się języki asemblerowe? Lernen beginnen
|
|
G2. Języki niskiego poziomu
|
|
|
3. Języki wysokiego poziomu Jaka jest główna cecha języków wysokiego poziomu, np. C++ czy Python? Lernen beginnen
|
|
(c) uniezależnienie od sprzętu w znacznym stopniu
|
|
|
Liście drzewa binarnego to węzły, które charakteryzują się tym, że Lernen beginnen
|
|
oba ich wskaźniki są równe NU
|
|
|
5. Binarne drzewa poszukiwań (BTS) Zgodnie z zasadą porządku BTS, lewe poddrzewo dla każdego węzła zawiera tylko węzły z wartościami: Lernen beginnen
|
|
(b) mniejszymi niż wartość węzła główne
|
|
|
6. Wypisywanie elementów drzewa BTS Wyświetlając elementy drzewa BTS w kolejności inorder, uzyskujemy ciąg wartości: Lernen beginnen
|
|
|
|
|
7. Drzewa wyważone Drzewa AVL i drzewa czerwono-czarne (RBT) to przykłady: Lernen beginnen
|
|
|
|
|
W drzewie AVL wskaźnik wyważenia węzła (Wsk) to różnica wysokości dla lewego i prawego poddrzewa (Hp−HLcap H sub p minus cap H sub cap L 𝐻𝑝−𝐻𝐿 ). Dla drzewa dokładnie wyważonego wartość bezwzględna tej różnicy może wynosić co najwyżej: Lernen beginnen
|
|
|
|
|
9. Założenia dotyczące drzew RBT Jednym z kluczowych założeń dotyczących drzew czerwono-czarnych (RBT) jest to, że każdy liść (NULL) jest koloru: Lernen beginnen
|
|
|
|
|
10. Operacje na drzewach RBT Operacje wstawiania i usuwania węzła w drzewach RBT wykonują się w czasie proporcjonalnym do: Lernen beginnen
|
|
nlog(n)bold n log open paren bold n close paren 𝐧log(𝐧)
|
|
|
11. Porównanie drzew AVL i RBT Dla dużych zbiorów danych, które drzewa są średnio szybsze w operacjach wyszukiwania? Lernen beginnen
|
|
|
|
|
Jaka struktura danych służy do implementacji kolejki priorytetowej, która pozwala usunąć element o największym kluczu? Lernen beginnen
|
|
|
|
|
Dodawanie do kopca minimalnego W kopcu minimalnym, jeśli nowy element jest mniejszy od rodzica, należy Lernen beginnen
|
|
zamienić je miejscami (przesiewanie w górę)
|
|
|
Grafy spójne i minimalne drzewa rozpinające Graf, którego dowolne dwa węzły można połączyć ścieżką, to: Lernen beginnen
|
|
|
|
|
Który z algorytmów obliczających najkrótszą ścieżkę działa poprawnie również dla wag o ujemnych wartościach? Lernen beginnen
|
|
|
|
|
Moduły w języku C++ W module C++, plik nagłówkowy (*.h) zawiera przede wszystkim: Lernen beginnen
|
|
deklaracje funkcji i definicje struktur
|
|
|
Struktury a klasy w C++ Technicznie, główna różnica między strukturami a klasami w C++ polega na tym, że domyślnie pola i metody struktur są publiczne, natomiast pola i metody klas są domyślnie Lernen beginnen
|
|
|
|
|
Kontenery STL std: vector to szablon klasy ułatwiający pracę z: Lernen beginnen
|
|
jednowymiarowymi tablicami dynamicznymi
|
|
|
Złożoność algorytmów prostego sortowania Wszystkie zaprezentowane algorytmy prostego sortowania (wybieranie, wstawianie, bąbelkowe) mają złożoność obliczeniową rzędu: Lernen beginnen
|
|
O(n2)bold cap O open paren bold n squared close paren 𝐎(𝐧𝟐)
|
|
|
alokacjastata dynamiPrzydział pamięci na zmienne statyczne odbywa się automatycznie w obszarze pamięci zwanym stosem, który ma stały i ograniczony rozmiar. Przydział pamięci na zmienne dynamiczne odbywa się na żądanie programisty w obszarze pamięci zwanym Lernen beginnen
|
|
|
|
|
Procesor a kod maszynowy Procesor komputera realizuje operacje zapisane w: Lernen beginnen
|
|
|
|
|
Języki programowania piątej generacji (G5), czyli inteligentne systemy wiedzy, pozwalają na Lernen beginnen
|
|
automatyczne generowanie kodu
|
|
|
Drzewo a drzewo binarne Jaka jest kluczowa różnica między ogólną definicją "drzewa" a "drzewa binarnego" w dokumencie? Lernen beginnen
|
|
Drzewo binarne ma dokładnie dwa wskaźniki na węzeł, a ogólne drzewo ma dwa lub więcej.
|
|
|
Drzewa binarne mają zastosowanie jako: Lernen beginnen
|
|
drzewa wyrażeń (np. w bryłach CSG)
|
|
|
Wypisywanie elementów drzewa BTS w kolejności preorder oznacza następującą sekwencję odwiedzin Lernen beginnen
|
|
węzeł, lewe poddrzewo, prawe poddrzewo
|
|
|
Drzewa wyważone, takie jak AVL czy RBT, utrzymują wysokość drzewa na możliwie najniższym poziomie, co zapewnia optymalną wydajność operacji takich jak: Lernen beginnen
|
|
wyszukiwanie, wstawianie i usuwanie
|
|
|
Rotacje w drzewach pozwalają na: Lernen beginnen
|
|
uzyskanie drzewa wyważonego
|
|
|
Dla każdego węzła w drzewie AVL ilość węzłów (waga) jego lewego i prawego poddrzewa może różnić się tylko o Lernen beginnen
|
|
|
|
|
W drzewach czerwono-czarnych (RBT), jeśli węzeł jest czerwony, to obaj jego potomkowie muszą być koloru: Lernen beginnen
|
|
|
|
|
Wysokość drzewa RBT o nn 𝑛 węzłach wewnętrznych wynosi co najwyżej: Lernen beginnen
|
|
2⋅log(n+1)2 center dot log open paren bold n plus 1 close paren
|
|
|
Jaka struktura danych jest używana do implementacji priority_queue w bibliotece STL? Lernen beginnen
|
|
|
|
|
Listę węzłów i listę krawędzi w grafie najprościej przechowywać w: Lernen beginnen
|
|
tablicach jednowymiarowych
|
|
|
Algorytm Dijkstry służy do wyznaczania najkrótszych ścieżek, ale tylko dla grafów z: Lernen beginnen
|
|
dodatnimi wagami krawędzi
|
|
|
Algorytm A* jest podobny do algorytmu Dijkstry, ale jest szybszy, ponieważ wykorzystuje: Lernen beginnen
|
|
metody heurystyczne (H[i]) do szacowania odległości
|
|
|
Plik implementacji modułu C++ o rozszerzeniu *. cpp zawiera Lernen beginnen
|
|
definicje (implementacje) funkcji z pliku nagłówkowego
|
|
|
Konstruktor to specjalna funkcja, która: Lernen beginnen
|
|
jest wywoływana w chwili alokacji pamięci na obiekt
|
|
|
Szablon klasy std: set (posortowany zbiór unikalnych elementów) jest implementacją Lernen beginnen
|
|
drzew czerwono-czarnych(RBT)
|
|
|
Tablice statyczne przekazywane do funkcji w C++ są przekazywane przez: Lernen beginnen
|
|
referencję (nie są kopiowane)
|
|
|
|
Lernen beginnen
|
|
asymptotyczne zachowanie funkcji (dla odpowiednio dużego n)
|
|
|
Obszar pamięci zwany stosem programu ma: Lernen beginnen
|
|
stały rozmiar (rzędu 1-2 MB) i łatwo może ulec przepełnieniu
|
|
|
Procesor realizuje operacje zapisane w: Lernen beginnen
|
|
|
|
|
Języki pierwszej generacji (G1) to języki poziomu maszynowego, w których programowanie odbywa się na poziomie: Lernen beginnen
|
|
|
|
|
Węzły, które mają oba wskaźniki równe NULL, to: Lernen beginnen
|
|
|
|
|
Dla każdego węzła w binarnym drzewie poszukiwań (BTS), prawe poddrzewo zawiera tylko węzły z wartościami: Lernen beginnen
|
|
większymi niż wartość węzła głównego
|
|
|
Wypisywanie elementów drzewa BTS w kolejności postorder oznacza odwiedzanie: Lernen beginnen
|
|
lewego poddrzewa, prawego poddrzewa, węzła
|
|
|
Drzewa AVL to specjalny typ drzew BST, w których wysokość jest utrzymywana na możliwie: Lernen beginnen
|
|
|
|
|
Drzewo RBT gwarantuje, że jest w przybliżeniu wyważone, a przywrócenie jego własności wymaga co najwyżej Lernen beginnen
|
|
|
|
|
Każda gałąź w drzewie RBT jest co najwyżej: Lernen beginnen
|
|
dwa razy dłuższa niz dowolna inna
|
|
|
W kopcu maksymalnym, największy element jest zawsze na pozycji: Lernen beginnen
|
|
|
|
|
Sortowanie przez kopcowanie (malejąco) polega na wielokrotnym pobieraniu Lernen beginnen
|
|
|
|
|
Graf, którego dowolne dwa węzły można połączyć ścieżką, to graf Lernen beginnen
|
|
|
|
|
Algorytm Kruskala służy do szukania: Lernen beginnen
|
|
minimalnego drzewa rozpinającego
|
|
|
Algorytm Bellmana-Forda (w przeciwieństwie do Dijkstry) nie używa: Lernen beginnen
|
|
|
|
|
Plik nagłówkowy o rozszerzeniu *. h zawiera między innymi: Lernen beginnen
|
|
|
|
|
Destruktor jest wywoływany w chwili: Lernen beginnen
|
|
zwalniania pamięci po zmiennej
|
|
|
Metoda push_back() wstawia nową wartość na Lernen beginnen
|
|
|
|
|
Stos (std: stack) działa w trybie Lernen beginnen
|
|
|
|
|
W sortowaniu przez wybieranie, w pierwszym kroku, najmniejszy element w tablicy zamieniamy z: Lernen beginnen
|
|
|
|
|
Przydział pamięci na zmienne dynamiczne odbywa się w obszarze pamięci zwanym: Lernen beginnen
|
|
|
|
|
Rekurencję ogonową bardzo łatwo jest zastąpić: Lernen beginnen
|
|
|
|
|
Jedną z podstawowych operacji realizowanych przez program jest Lernen beginnen
|
|
ustawianie sygnałów wyjściowych
|
|
|
Języki symboliczne i języki asemblerowe należą do generacji: Lernen beginnen
|
|
|
|
|
Języki G4 są specyficzne dla pewnego zastosowania, na przykład Lernen beginnen
|
|
|
|
|
Drzewo to regularna struktura pamięciowa, gdzie każdy element (węzeł) zawiera: Lernen beginnen
|
|
dwa lub więcej wskaźników
|
|
|
Bryły CSG są reprezentowane przez drzewa wyrażeń, gdzie bryły podstawowe znajdują się w: Lernen beginnen
|
|
|
|
|
Dla danego węzła w BTS, lewe poddrzewo zawiera tylko węzły z wartościami: Lernen beginnen
|
|
mniejszymi niż wartość węzła
|
|
|
Wyświetlając drzewo BTS w kolejności inorder uzyskujemy: Lernen beginnen
|
|
c) ciąg wartości posortowanych rosnąco
|
|
|
Przykłady drzew wyważonych to: Lernen beginnen
|
|
drzewa AVL i drzewa czerwono-czarne (RBT
|
|
|
Maksymalna liczba koniecznych rotacji dla drzewa o n węzłach w celu uzyskania drzewa wyważonego jest rzędu: Lernen beginnen
|
|
log(n)log open paren bold n close paren log(𝐧)
|
|
|
Wskaźnik wyważenia węzła to różnica wysokości poddrzewa prawego i lewego (Hp−HLcap H sub p minus cap H sub cap L 𝐻𝑝−𝐻𝐿). W drzewie AVL różnica ta może wynosić: Lernen beginnen
|
|
|
|
|
Zgodnie z założeniami drzew RBT, korzeń musi być koloru: Lernen beginnen
|
|
|
|
|
Każda prosta ścieżka z ustalonego węzła do dowolnego liścia w RBT ma tyle samo: Lernen beginnen
|
|
|
|
|
W drzewie czerwono-czarnym pochylonym w lewo (LLRBT) prawy potomek jest czerwony tylko i wyłącznie wtedy, gdy: Lernen beginnen
|
|
czerwony jest również lewy potomek
|
|
|
Operacje wstawiania i usuwania w RBT wykonują się w czasie proporcjonalnym do Lernen beginnen
|
|
|
|
|
Drzewa AVL są lepiej wyważone (od RBT), a więc lepiej się sprawdzają w operacjach Lernen beginnen
|
|
|
|
|
W kopcu minimalnym, jeśli nowy element jest mniejszy od rodzica, zamieniamy je miejscami. Proces ten nazywa się: Lernen beginnen
|
|
przesiewaniem w górę (heapify up)
|
|
|
Krawędzie w grafach mogą mieć przypisane zwroty, tworząc: Lernen beginnen
|
|
|
|
|
MST to spójny podgraf grafu spójnego, w którym suma wag krawędzi jest: Lernen beginnen
|
|
|
|
|
Algorytm Bellmana-Forda ma złożoność obliczeniową rzędu: Lernen beginnen
|
|
O(|E|⋅|V|) bold cap O open paren the absolute value of bold cap E end-absolute-value center dot the absolute value of bold cap V end-absolute-value close paren 𝐎(|𝐄|⋅|𝐕|)
|
|
|
Algorytm A* jest algorytmem heurystycznym, który sortuje elementy w kolejce Q wg wartości F[i]=G[i]+H[i]cap F open bracket i close bracket equals cap G open bracket i close bracket plus cap H open bracket i close bracket 𝐹[𝑖]=𝐺[𝑖]+𝐻[𝑖] to Lernen beginnen
|
|
szacunkowa pozostała długość ścieżki do celu
|
|
|
W pliku implementacji *. cpp mogą znajdować się ewentualne definicje i deklaracje lokalne, dostępne tylko w Lernen beginnen
|
|
|
|
|
Pola i metody klas w C++ są domyślnie Lernen beginnen
|
|
|
|
|
Szablon klasy std: forward_list implementuje listę dynamiczną Lernen beginnen
|
|
|
|
|
std: map to posortowany zbiór unikalnych Lernen beginnen
|
|
|
|
|
Gdy tablica statyczna jest przekazywana do funkcji przez referencję, operacje na niej wewnątrz funkcji: Lernen beginnen
|
|
zmieniają zawartość tablicy oryginalnej
|
|
|
Z zaprezentowanych algorytmów prostego sortowania, najlepsze (najszybsze średnio) jest sortowanie przez Lernen beginnen
|
|
|
|
|
Wszystkie zaprezentowane algorytmy sortowania prostego mają złożoność obliczeniową rzędu O(n2)bold cap O open paren bold n squared close paren 𝐎(𝐧𝟐) Lernen beginnen
|
|
|
|
|
Stos ma stały rozmiar (rzędu 1-2 MB) i łatwo może ulec przepełnieniu, np. w przypadku Lernen beginnen
|
|
zbyt dużych tablic statycznych lub źle napisanej rekurencji
|
|
|
Przydział pamięci dynamicznej odbywa się w trakcie pracy programu na żądanie programisty za pomocą instrukcji: Lernen beginnen
|
|
|
|
|
Funkcje rekurencyjne muszą charakteryzować się warunkiem końca, ponieważ: Lernen beginnen
|
|
bez niego funkcja wywoływałaby się w nieskończoność
|
|
|
Po co stosujemy drzewa czerwono czarne? Lernen beginnen
|
|
żeby hierarchiczna struktura drzewa była bardziej widziana
|
|
|
Ktöre z poniższych stwierdzen o drzewach binarnego wyszukiwania jest falszywe: Lernen beginnen
|
|
wszystkie elementy w wezle SA wieksze niz elementy lewego i prawego poddrzewa
|
|
|
Ktore z poniższych stwierdzen o rekurencji jest prawdziwe: Lernen beginnen
|
|
rekurencja posrednia to wzajemne wywolywanie przez siebie dwu lub wiecej podprogramow
|
|
|
Czy lista przechowujaca ciag liczb musi skladać się z rekordow(struktur)? Lernen beginnen
|
|
musi bo kazdy element listy oprocz liczby musi zawierac wskaźnik, wiec pola SA roznych typow
|
|
|
Jeśli chcemy jak najtańszym kosztem polączyć ze sobą wszystkie stacje metra musimy: Lernen beginnen
|
|
znależć minimalne drzewo rozpinające grafu reprezentującego sieć metra
|
|
|
Ktöre z poniższych stwierdzeń nie dotyczy rekurencyjnego wyświetlania drzewa binarnego: Lernen beginnen
|
|
zeby móc wyświetlić drzewa binarne, musi istnieć jego lewe i prawe podrzewo
|
|
|
Jaka przewagę mają drzewa binarne nad listami? Lernen beginnen
|
|
pozwalają na znacznie szybsze wyszukiwanie elementów w duzych zbiorach
|
|
|
Pętla sterowana warunkiem umożliwia: Lernen beginnen
|
|
wvkonanie pewnych czynności cyklicznie dopóki pewien warunek jest prawdziwy
|
|
|