Przejdź do głównej treści

Pytania pomocnicze - INF.03

Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych - pytania pomocnicze rozwijające tematy z pytań egzaminacyjnych. Łącznie: 8439. Strona 103 z 116.

Dlaczego wyszukiwanie najmniejszej wartości ma złożoność O(n)?

Ponieważ w najprostszym algorytmie trzeba sprawdzić każdy z n elementów przynajmniej raz. Liczba operacji rośnie liniowo wraz z liczbą danych.

Ile porównań wykonuje standardowy algorytm znajdowania minimum?

Dla n elementów wykonuje zwykle n - 1 porównań, ponieważ pierwszy element przyjmuje się jako początkowe minimum. W notacji O zapisuje się to jako O(n).

Czym różni się złożoność O(n) od O(n²)?

O(n) oznacza, że liczba operacji rośnie liniowo, np. jedna pętla po tablicy. O(n²) oznacza wzrost kwadratowy, najczęściej przy dwóch zagnieżdżonych pętlach.

Czy posortowanie danych zmienia sposób znalezienia minimum?

Tak. W posortowanej rosnąco tablicy minimum jest pierwszym elementem, więc można je odczytać w O(1). W pytaniu chodzi jednak o standardowe wyszukiwanie w zestawie liczb, czyli O(n).

Dlaczego odpowiedź O(n!) jest niepoprawna dla wyszukiwania minimum?

O(n!) dotyczy algorytmów sprawdzających ogromną liczbę permutacji lub kombinacji. Znalezienie minimum wymaga jedynie pojedynczego przejścia po danych.

Czy algorytm znajdowania maksimum ma taką samą złożoność jak znajdowanie minimum?

Tak. W obu przypadkach trzeba przejrzeć wszystkie elementy zbioru, dlatego standardowy algorytm ma złożoność O(n).

Do czego służy polecenie ALTER TABLE w SQL?

Polecenie `ALTER TABLE` służy do zmiany struktury istniejącej tabeli, np. dodania, usunięcia lub modyfikacji kolumny.

Jaka jest różnica między ALTER TABLE a UPDATE?

`ALTER TABLE` zmienia strukturę tabeli, czyli np. kolumny. `UPDATE` zmienia dane zapisane w rekordach tabeli.

Jak dodać nową kolumnę do tabeli w SQL?

Można użyć polecenia `ALTER TABLE` z klauzulą `ADD`, np. `ALTER TABLE uczniowie ADD email VARCHAR(100);`.

Jak usunąć kolumnę z tabeli w SQL?

Do usunięcia kolumny służy `ALTER TABLE` z klauzulą `DROP COLUMN`, np. `ALTER TABLE uczniowie DROP COLUMN email;`.

Które polecenie usuwa całą tabelę z bazy danych?

Całą tabelę usuwa polecenie `DROP TABLE`. Jest to inna operacja niż `ALTER TABLE`, które modyfikuje istniejącą tabelę.

Które polecenie tworzy nową tabelę w bazie danych?

Nową tabelę tworzy polecenie `CREATE TABLE`. `ALTER TABLE` działa dopiero na tabeli, która już istnieje.

Dlaczego ALTER TABLE zalicza się do DDL?

Ponieważ `ALTER TABLE` zmienia definicję struktury bazy danych, a polecenia DDL służą właśnie do definiowania i modyfikowania obiektów bazy danych.

Czym metoda POST różni się od metody GET podczas wysyłania formularza?

GET przesyła dane w adresie URL, a POST przesyła je w treści żądania HTTP. Dlatego POST jest właściwszy dla danych poufnych i większych formularzy.

Czy metoda POST szyfruje przesyłane dane?

Nie. POST tylko ukrywa dane przed paskiem adresu, ale ich nie szyfruje. Do szyfrowania potrzebne jest połączenie HTTPS.

Dlaczego danych logowania nie powinno się przesyłać metodą GET?

Dane GET są widoczne w adresie URL, mogą trafić do historii przeglądarki, logów serwera lub zostać zapisane jako zakładka. Hasła i inne dane poufne powinny być przesyłane metodą POST przez HTTPS.

Jak ustawia się metodę POST w formularzu HTML?

W znaczniku form należy użyć atrybutu `method="post"`. Adres skryptu odbierającego dane podaje się zwykle w atrybucie `action`.

Jak w PHP odczytuje się dane przesłane metodą POST?

Dane przesłane metodą POST są dostępne w superglobalnej tablicy `$_POST`. Na przykład wartość pola `login` można odczytać jako `$_POST['login']`.

Czy formularz wysłany metodą POST można wygodnie zapisać jako zakładkę?

Nie w takim sensie jak żądanie GET. Zakładka zapisuje głównie adres URL, a dane POST nie są częścią adresu.

Kiedy metoda GET jest lepszym wyborem niż POST?

GET jest dobry dla danych niepoufnych, które opisują zapytanie, np. wyszukiwanie lub filtrowanie listy produktów. Taki adres można łatwo skopiować, udostępnić lub zapisać jako zakładkę.

Na czym polega podstawowa zasada sortowania bąbelkowego?

Algorytm porównuje pary sąsiednich elementów tablicy i zamienia je miejscami, jeśli są w niewłaściwej kolejności. Proces powtarza się, aż tablica będzie posortowana.

Dlaczego sortowanie bąbelkowe nazywa się bąbelkowym?

Największe elementy stopniowo przesuwają się na koniec tablicy, podobnie jak bąbelki unoszące się ku górze. Po każdym pełnym przejściu jeden element trafia na właściwe miejsce.

Czym sortowanie bąbelkowe różni się od sortowania przez wybór?

Sortowanie bąbelkowe wielokrotnie zamienia sąsiednie elementy. Sortowanie przez wybór wyszukuje najmniejszy lub największy element i umieszcza go na odpowiedniej pozycji.

Jaka jest złożoność czasowa sortowania bąbelkowego?

Typowa złożoność czasowa sortowania bąbelkowego wynosi O(n²). Oznacza to, że dla dużych tablic algorytm jest mało wydajny.

Kiedy sortowanie bąbelkowe może być użyteczne?

Może być użyteczne w nauce algorytmów, ponieważ jest proste do zrozumienia i zapisania. W praktycznych zastosowaniach częściej używa się szybszych algorytmów sortowania.

Czym sortowanie bąbelkowe różni się od sortowania szybkiego?

Sortowanie szybkie dzieli tablicę względem elementu zwanego pivotem i sortuje części tablicy osobno. Sortowanie bąbelkowe działa prostszą metodą porównywania sąsiednich elementów.

Jak rozpoznać sortowanie bąbelkowe w opisie egzaminacyjnym?

Najważniejsze słowa-klucze to: porównywanie sąsiednich elementów, zamiana elementów miejscami oraz powtarzanie procesu. Taki opis wskazuje na sortowanie bąbelkowe.

Jak obliczyć proporcje obrazu na podstawie rozdzielczości?

Należy zapisać szerokość i wysokość jako stosunek, np. 1920:1080, a następnie skrócić go przez największy wspólny dzielnik. Wynik pokazuje proporcje obrazu.

Dlaczego 320 × 240 nie jest rozdzielczością 16:9?

Stosunek 320:240 po skróceniu daje 4:3. To proporcja typowa dla starszych ekranów, a nie panoramiczne 16:9.

Jakie rozdzielczości są typowymi przykładami proporcji 16:9?

Typowe rozdzielczości 16:9 to 1280 × 720, 1920 × 1080 oraz 2560 × 1440. Po skróceniu każda z nich daje stosunek 16:9.

Co oznacza założenie, że piksel jest kwadratowy?

Oznacza to, że szerokość i wysokość pojedynczego piksela są takie same. Dzięki temu proporcje obrazu można wyznaczyć bezpośrednio z liczby pikseli w poziomie i pionie.

Czy 1366 × 768 jest idealnie równe proporcji 16:9?

Matematycznie nie jest idealnie równe 16:9, ale jest bardzo bliskie tej proporcji. W praktyce i w wielu testach traktuje się je jako rozdzielczość panoramiczną 16:9.

Jak szybko rozpoznać proporcję 16:9 bez skracania ułamka?

Można podzielić szerokość przez wysokość. Jeśli wynik jest bliski 1,78, obraz ma proporcje zbliżone do 16:9.

Co oznacza prostokąt w schemacie blokowym algorytmu?

Prostokąt oznacza blok operacyjny, czyli wykonanie czynności obliczeniowej lub przypisania. Przykładem jest zmiana wartości zmiennej.

Dlaczego instrukcja n ← n - 3 pasuje do bloku operacyjnego?

Ponieważ wykonuje działanie arytmetyczne i przypisuje wynik z powrotem do zmiennej n. Jest to typowa operacja przetwarzania danych.

Czym różni się blok operacyjny od bloku decyzyjnego?

Blok operacyjny ma kształt prostokąta i zawiera instrukcję wykonania działania. Blok decyzyjny ma kształt rombu i zawiera warunek, np. n > 70.

Jak rozpoznać instrukcję warunkową w schemacie blokowym?

Instrukcja warunkowa zwykle znajduje się w rombie i ma odpowiedzi typu tak/nie. Przykładem warunku jest n > 70.

Co oznacza symbol strzałki w instrukcji n ← n - 3?

Strzałka oznacza przypisanie wartości. Zmienna n otrzymuje nową wartość obliczoną jako dotychczasowe n minus 3.

Czy wyświetlenie wartości zmiennej pasuje do prostokątnego bloku operacyjnego?

Zwykle nie. Operacje wejścia i wyjścia, takie jak wyświetlanie danych, często zapisuje się w równoległoboku.

Dlaczego w tym zapytaniu należy użyć SELECT nazwa, a nie SELECT *?

Polecenie wymaga wyświetlenia tylko nazw wycieczek. `SELECT *` zwróciłoby wszystkie kolumny tabeli, np. nazwę, cenę i liczbę miejsc.

Dlaczego poprawnym operatorem logicznym jest AND, a nie OR?

Wycieczka ma jednocześnie spełniać dwa warunki: cena ma być mniejsza od 2000 i liczba miejsc ma wynosić co najmniej 4. Operator `AND` wymaga spełnienia obu warunków naraz.

Jak zapisać warunek „co najmniej cztery miejsca” w SQL?

Można zapisać `miejsca >= 4`. Jeśli kolumna przechowuje liczby całkowite, równoważny jest zapis `miejsca > 3`.

Czym różni się warunek cena < 2000 od cena <= 2000?

`cena < 2000` oznacza cenę mniejszą niż 2000, więc 2000 nie jest uwzględnione. `cena <= 2000` uwzględnia również cenę równą 2000.

Jaką rolę pełni klauzula WHERE w zapytaniu SELECT?

`WHERE` ogranicza wyniki do rekordów spełniających podany warunek. Bez `WHERE` zapytanie zwróciłoby dane ze wszystkich wierszy tabeli.

Jak odczytać zapytanie SELECT nazwa FROM wycieczki WHERE cena < 2000 AND miejsca > 3?

Należy je rozumieć jako: wybierz kolumnę `nazwa` z tabeli `wycieczki` tylko dla tych rekordów, gdzie cena jest mniejsza od 2000 i liczba miejsc jest większa od 3.

Kiedy w SQL warto używać nawiasów przy warunkach logicznych?

Nawiasy są przydatne, gdy w jednym warunku występują jednocześnie `AND` i `OR`. Pozwalają jednoznacznie określić kolejność sprawdzania warunków.

Czym jest redundancja danych w bazie danych?

Redundancja danych to niepotrzebne powielanie tych samych informacji w wielu miejscach bazy. Prowadzi do nadmiarowości i może powodować błędy.

Dlaczego redundancja danych jest niekorzystna?

Powoduje zwiększenie rozmiaru bazy, utrudnia aktualizacje i może prowadzić do niespójności danych, np. gdy ten sam adres klienta zostanie zmieniony tylko w jednym rekordzie.

Jak normalizacja wpływa na redundancję danych?

Normalizacja zmniejsza redundancję przez podział danych na powiązane tabele. Dzięki temu ta sama informacja nie musi być zapisywana wielokrotnie.

Czym różni się redundancja od spójności danych?

Redundancja oznacza nadmiarowe powielanie danych, a spójność danych oznacza ich zgodność i brak sprzeczności. Redundancja może prowadzić do utraty spójności.

Czym różni się redundancja od integralności referencyjnej?

Redundancja dotyczy powielania danych, natomiast integralność referencyjna dotyczy poprawnych powiązań między tabelami, zwykle przez klucze główne i obce.

Jak można rozpoznać redundancję w tabeli?

Jeżeli te same dane, np. nazwa klienta, adres lub numer telefonu, powtarzają się w wielu rekordach bez potrzeby, jest to sygnał redundancji.

Czy każda redundancja danych jest błędem?

Nie zawsze. Czasem świadomie stosuje się kontrolowaną redundancję dla wydajności, ale w podstawowym projektowaniu relacyjnych baz danych zwykle dąży się do jej ograniczenia.

Do czego służy element <tr> w tabeli HTML?

Element <tr> tworzy wiersz tabeli. W jego wnętrzu umieszcza się komórki <td> lub <th>.

Czym różni się element <th> od <td>?

<th> oznacza komórkę nagłówkową, a <td> zwykłą komórkę z danymi. Przeglądarka domyślnie wyróżnia <th>, zwykle pogrubieniem i wyśrodkowaniem.

Dlaczego w pierwszym wierszu tabeli często używa się <th>?

Pierwszy wiersz często zawiera nagłówki kolumn, czyli opisy danych znajdujących się niżej. Do takich komórek przeznaczony jest znacznik <th>.

Czy tabela HTML może działać bez CSS?

Tak. HTML określa strukturę tabeli, a CSS odpowiada tylko za wygląd, np. kolory, obramowanie czy odstępy.

Jaka jest podstawowa struktura tabeli HTML?

Tabela zaczyna się od <table>, wiersze tworzy się za pomocą <tr>, a komórki za pomocą <th> lub <td>.

Dlaczego odpowiedź z samymi znacznikami <td> nie jest najlepsza dla nagłówków kolumn?

Znaczniki <td> służą do zwykłych danych, a nie do nagłówków. Dla nazw kolumn poprawniejsze semantycznie są znaczniki <th>.

Jak numerowane są znaki w łańcuchu tekstowym w JavaScript?

Znaki są numerowane od indeksu 0. Pierwszy znak ma indeks 0, drugi indeks 1 itd.

Dlaczego wynik działania substring(2, 6) dla tekstu JavaScript to vaSc?

Metoda pobiera znaki od indeksu 2 do indeksu 6, ale bez znaku o indeksie 6. Dla tekstu JavaScript są to znaki: v, a, S, c.

Czy drugi argument metody substring() jest wliczany do wyniku?

Nie. Drugi argument oznacza indeks końcowy, przy którym wycinanie się zatrzymuje, ale znak o tym indeksie nie trafia do wyniku.

Co zwróci metoda substring(), gdy podany jest tylko jeden argument?

Zwróci fragment tekstu od podanego indeksu aż do końca łańcucha.

Jaka jest różnica między substring() a substr() w JavaScript?

W substring(start, koniec) drugi argument oznacza indeks końcowy. W substr(start, długość) drugi argument oznacza liczbę znaków do pobrania.

Czy metoda substring() zmienia pierwotną zmienną tekstową?

Nie. Metoda substring() zwraca nowy łańcuch znaków, a oryginalny tekst pozostaje bez zmian.