Matura Computer Science flashcards
Matura Computer Science · Build recall with a focused review session.
32 cards. Read the term and the definition here. The deck at the top of this page is optional.
- Binary search precondition
- The array must be sorted, and random access to elements is required. Each comparison halves the search interval, giving O(log n) time; an unsorted array makes the method invalid.
- Stack vs queue
- A stack removes the most recently added element (LIFO); a queue removes the oldest (FIFO). Stacks suit undo and recursion; queues suit scheduling and buffering.
- Big-O notation
- A description of an algorithm's growth rate as input size increases, ignoring constants. O(n log n) sorting scales far better than O(n^2) on large inputs.
- Recursion base case
- The condition that stops recursive calls and returns a value directly. Without it, recursion never terminates and exhausts the call stack, causing a stack overflow.
- Two's complement range
- For n bits, signed values span -2^(n-1) to 2^(n-1)-1, so 8 bits give -128 to 127. Negation is bitwise inversion followed by adding one.
- Linked list access cost
- Reaching the k-th element requires following k pointers from the head, so access is O(n). Insertion is O(1) only when the position is already known.
- Hash table collision
- Two keys mapping to the same bucket. Chaining stores colliding entries in a list per bucket; open addressing probes for another free slot.
- UTF-8 encoding
- A variable-length Unicode encoding using one to four bytes per code point. The first 128 code points match ASCII, so ASCII text is valid UTF-8.
- Primary key
- A column or column set that uniquely identifies each row of a table. It must be unique and non-null, and other tables reference it via foreign keys.
- WHERE versus HAVING
- WHERE filters individual rows before grouping; HAVING filters groups after aggregation. Conditions on aggregate functions such as COUNT or SUM belong in HAVING.
- INNER versus LEFT JOIN
- INNER JOIN returns only rows matching in both tables. LEFT JOIN returns every row of the left table, filling missing right-side columns with NULL.
- Third normal form
- A table in 2NF with no transitive dependency of a non-key attribute on another non-key attribute. Each non-key attribute depends only on the key.
- TCP versus UDP
- TCP establishes a connection and guarantees ordered, reliable delivery with retransmission. UDP sends datagrams without guarantees, which suits streaming and DNS queries.
- DNS function
- Translates human-readable domain names into IP addresses by querying a hierarchy of root, top-level-domain and authoritative name servers.
- Private IPv4 ranges
- Address blocks not routed on the public internet: 10.0.0.0/8, 172.16.0.0/12 and 192.168.0.0/16. They require NAT to reach external networks.
- HTTPS default port
- Port 443 carries HTTP over TLS, encrypting traffic and authenticating the server with a certificate. Plain HTTP uses port 80 without encryption.
- Fetch-decode-execute cycle
- The CPU repeatedly fetches the instruction addressed by the program counter, decodes its operation, executes it, and stores any result in registers or memory.
- Volatile versus non-volatile memory
- Volatile memory such as RAM loses its contents when power is removed. Non-volatile memory such as ROM, flash and disk retains data without power.
- Half adder outputs
- A circuit adding two bits, producing sum equal to A XOR B and carry equal to A AND B. Full adders chain these to add wider binary numbers.
- NAND functional completeness
- Any Boolean function can be built from NAND gates alone, so a NAND-only gate set is functionally complete. NOR alone is also complete.
- Black-box testing
- Testing based only on inputs and expected outputs from the specification, without examining internal code structure. It complements white-box testing of internal paths.
- Regression testing
- Re-running previously passed tests after a change to confirm that existing functionality still works and no new defects were introduced.
- Git commit versus branch
- A commit records a snapshot of the repository with a message; a branch is a movable pointer to a line of commits, enabling parallel development.
- UML class diagram
- A diagram showing classes with attributes and methods, plus relationships such as association, inheritance, aggregation and composition between them.
- Software licence type
- Terms defining permitted use, modification and redistribution. Proprietary licences restrict these; open-source licences such as GPL or MIT grant them under conditions.
- GDPR data subject rights
- Rights granted to individuals over their personal data, including access, rectification, erasure and portability, plus the right to object to processing.
- Digital divide
- The gap between people with reliable access to computers, internet and digital skills and those without, affecting education, employment and services.
- Net neutrality
- The principle that internet service providers treat all traffic equally, without blocking, throttling or paid prioritisation based on content or sender.
- Absolute versus relative reference
- A relative reference like A1 shifts when a formula is copied; an absolute reference like $A$1 stays fixed. Mixed references lock only the column or row.
- VLOOKUP exact match
- VLOOKUP(value, range, index, FALSE) searches the first column for an exact match and returns the value from the given column index; TRUE allows approximate matching.
- Pivot table purpose
- A spreadsheet tool that groups rows by chosen fields and applies aggregates such as SUM or COUNT, producing summary views without rewriting formulas.
- Boundary test case
- A test using values at the edges of valid input, such as the minimum, maximum or an empty list, where off-by-one errors most often appear.