Number systems
- Place values
- binary 2k, octal 8k, hex 16k
- To decimal
- Σ dk·bk
- From decimal
- divide by the base, read the remainders bottom-up
- Hex ↔ binary
- one hex digit = 4 bits
- Two’s complement
- invert the bits and add 1
Formula sheets, the key method steps for every topic and 20 practice problems, with full solutions at the back.
Write −86 as an 8-bit two's complement pattern. Read the pattern as an unsigned binary number: what is its value U in decimal?
What is the most negative integer N that can be stored in 20-bit two's complement?
Which formula is logically equivalent to ¬(a ∧ c)? Click it.
Which statement is equivalent to ¬∃x A(x), with the negation moved all the way inside? Click it.
Simplify F = A′BC′ + A′B + A′BC + A′C to its minimal sum-of-products form. How many literals L does the simplified expression contain?
A Johnson (twisted-ring) counter is made of 8 D flip-flops, with the inverted last output fed back to the first input, and starts at all zeros. How many different states N does it go through?
Find Euler’s totient φ(245), the number of integers from 1 to 245 that are coprime to 245.
19 is prime. Use Fermat’s little theorem to find 2530415 mod 19.
Breadth-first search on an unweighted graph finds:
To show that a new problem X is NP-hard, what must you do?
In a binary min-heap stored in an array (index starting at 0), the children of the node at index i are at:
The time complexity of decrease-key in a binary heap (given the element's position) is:
A tree has 4 vertices of degree 3, 3 vertices of degree 5, and all its other vertices are leaves (degree 1). How many leaves L does it have?
Kruskal’s algorithm builds a minimum spanning tree. Click the edge it adds as edge number 6; skipped edges do not count.
Which query lists customers who have never placed an order?
Boyce–Codd normal form (BCNF) requires that for every non-trivial functional dependency X → Y:
Using even parity, which parity bit is added to the data bits 1011001?
A DNS cache poisoning attack aims to:
The network 192.168.10.0/24 must be divided into at least 3 equal subnets. If you borrow as few bits as possible, how many usable hosts H does each subnet have?
A host has the address 10.20.90.4/27. What is the fourth octet x of the last usable host address in its subnet?
Answer: U = 170
Positional number systems: each digit is worth its value times a power of the base. In binary the places are worth 1, 2, 4, 8, 16, …; in hexadecimal 1, 16, 256, …, with A–F standing for 10–15. In 8-bit two's complement the leftmost bit is worth −128 instead of +128, which is how negative numbers are stored.
Answer: N = −524288
Positional number systems: each digit is worth its value times a power of the base. In binary the places are worth 1, 2, 4, 8, 16, …; in hexadecimal 1, 16, 256, …, with A–F standing for 10–15. In 8-bit two's complement the leftmost bit is worth −128 instead of +128, which is how negative numbers are stored.
Answer: ¬a ∨ ¬c
Logical equivalence: two formulas are equivalent (≡) when they have the same value in every row of the truth table. A tautology is 1 in every row, a contradiction is 0 in every row, and a contingency is neither. Useful laws: De Morgan, ¬(a ∧ b) ≡ ¬a ∨ ¬b and ¬(a ∨ b) ≡ ¬a ∧ ¬b; a → b ≡ ¬a ∨ b ≡ ¬b → ¬a (contrapositive); ¬(a → b) ≡ a ∧ ¬b; and the distributive laws, a ∨ (b ∧ c) ≡ (a ∨ b) ∧ (a ∨ c).
The columns after the bar are the options in the order shown.
Answer: ∀x ¬A(x)
Quantifiers and arguments: ¬∀x P(x) ≡ ∃x ¬P(x) and ¬∃x P(x) ≡ ∀x ¬P(x). Move a negation inwards, swap every quantifier it passes, and negate the inner formula with the propositional laws, such as ¬(a → b) ≡ a ∧ ¬b. An argument is valid when the conclusion is 1 in every row in which all premises are 1. A single row with true premises and a false conclusion is a counterexample and shows the argument is invalid.
The other options either keep a quantifier unchanged, change the order of the quantifiers, or negate the inner formula wrongly.
Answer: L = 4
Boolean algebra: the rules that simplify expressions are X + X′ = 1 and X·X′ = 0, X + X = X, absorption X + X·Y = X, the combining rule X·Y + X·Y′ = X, X + X′Y = X + Y and the consensus theorem XY + X′Z + YZ = XY + X′Z. De Morgan's laws turn (X·Y)′ into X′ + Y′ and (X + Y)′ into X′·Y′. A Karnaugh map applies these rules graphically: every group of two neighbouring cells is one use of XY + XY′ = X.
Answer: N = 16
Flip-flops and counters: a flip-flop changes only at the active clock edge. D copies its input (Q⁺ = D); T toggles when T = 1; JK holds for 00, resets for 01, sets for 10 and toggles for 11. An n-bit binary counter has 2ⁿ states and counts modulo 2ⁿ; a mod-N counter goes 0, 1, …, N − 1 and back to 0, and needs the smallest n with 2ⁿ ≥ N flip-flops. Each stage of a ripple counter halves the frequency, so the last output of a mod-N counter runs at fclk/N. A Johnson counter of n flip-flops has 2n states, a ring counter n.
Answer: φ(245) = 168
Inverses and congruences: a has an inverse modulo n exactly when gcd(a, n) = 1. The extended Euclidean algorithm writes 1 = s·n + t·a, and then a⁻¹ ≡ t (mod n). A congruence a·x ≡ b (mod n) with gcd(a, n) = 1 has the solution x ≡ a⁻¹·b. Two congruences x ≡ r₁ (mod m₁) and x ≡ r₂ (mod m₂) with coprime moduli have one solution modulo m₁·m₂ (Chinese remainder theorem). Euler’s φ(n) counts the numbers from 1 to n that are coprime to n: φ(n) = n·∏(1 − 1/p).
Answer: 2530415 mod 19 = 4
Modular powers and RSA: compute aᵏ mod n by repeated squaring: write k in binary, square, reduce after every step and multiply the powers whose bit is 1. Fermat: aᵖ⁻¹ ≡ 1 (mod p) for a prime p not dividing a, so the exponent can be reduced modulo p − 1. RSA: choose primes p and q, n = p·q and φ(n) = (p − 1)(q − 1); the public exponent e is coprime to φ(n), and the private exponent is d = e⁻¹ mod φ(n). Encrypt with c = mᵉ mod n and decrypt with m = cᵈ mod n.
Answer: D · Shortest paths in number of edges from the start node
BFS visits nodes in order of distance (edges) from the source, so it finds shortest unweighted paths in O(V + E).
Answer: D · Reduce a known NP-hard problem to X in polynomial time
If a known hard problem can be transformed into X efficiently, a fast algorithm for X would solve the known problem too.
Answer: B · 2i + 1 and 2i + 2
For 0-based arrays, the left child is at 2i + 1, the right child at 2i + 2, and the parent at ⌊(i − 1)/2⌋.
Answer: B · O(log n)
After decreasing the key, the element sifts up at most the height of the heap. Fibonacci heaps achieve O(1) amortised decrease-key.
Answer: L = 15
Euler, Hamilton and trees: a connected graph has an Euler circuit (every edge once, back to the start) when every vertex has even degree, and an Euler path that is not a circuit when exactly two vertices have odd degree; the path then runs from one odd vertex to the other. A Hamilton circuit visits every vertex once; Kn has (n − 1)!/2 of them. A tree on n vertices has n − 1 edges, and a connected graph with m edges keeps a spanning tree after removing m − n + 1 edges.
Shortcut: L = 2 + Σ (d − 2) over the vertices with degree d ≥ 3.
Answer: edge EF
Shortest paths and spanning trees: Dijkstra’s algorithm settles one vertex per round: the unsettled vertex with the smallest tentative distance. Its distance is then final, and every neighbour v gets d(v) = min(d(v), d(u) + w(u, v)). Kruskal’s algorithm builds a minimum spanning tree by taking the edges from light to heavy and skipping any edge that would close a cycle; Prim’s algorithm grows one tree from a start vertex by always adding the lightest edge that leaves it. A spanning tree of n vertices has n − 1 edges.
Answer: C · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
The left join keeps all customers and fills order columns with NULL when there is no match; IS NULL then picks exactly those customers.
Answer: D · X is a superkey
BCNF demands that every determinant is a candidate key (superkey); 3NF allows an exception when Y is part of a candidate key.
Answer: C · 0
1011001 contains four 1-bits, already an even number, so the parity bit is 0. With odd parity it would be 1.
Answer: A · Make a resolver store a false IP address for a domain
Poisoning inserts forged records into a resolver's cache. DNSSEC adds signatures so resolvers can verify records.
Answer: H = 62
IPv4 subnetting: an address has 32 bits. The prefix /p says how many leading bits identify the network; the remaining 32 − p bits number the hosts. A subnet has 2³²⁻ᵖ addresses, but the first (network address) and last (broadcast address) cannot be given to hosts, so 2³²⁻ᵖ − 2 hosts fit. Exceptions: a /31 (point-to-point link, RFC 3021) uses both of its 2 addresses for hosts, and a /32 is one single address (a single host or a loopback).
Answer: x = 30
IPv4 subnetting: an address has 32 bits. The prefix /p says how many leading bits identify the network; the remaining 32 − p bits number the hosts. A subnet has 2³²⁻ᵖ addresses, but the first (network address) and last (broadcast address) cannot be given to hosts, so 2³²⁻ᵖ − 2 hosts fit. Exceptions: a /31 (point-to-point link, RFC 3021) uses both of its 2 addresses for hosts, and a /32 is one single address (a single host or a loopback).
ExamProblems · examproblems.com/courses/computer-science-fundamentals