Collections
Sorting, Searching, also more collections
Threads, Networking, IO
Graphs
JavaFX
100

A manually ordered collection where elements can be inserted in the middle quickly but access by index is slow

What is a linked list?

100

A sorting algorithm that splits a list into two using a pivot

What is quicksort?

100

This keyword is used to ensure that a block of code can only be run once at a time to prevent data loss or corruption.

What is synchronized?

100

The representation of a graph where each vertex stores a list or set of the other vertices it connects to

What is an adjacency list?

100

This class represents the window that the GUI runs inside of

What is Stage?

200

A data structure that keeps its elements sorted where elements can be inserted or removed in O(log n) time

What is a binary search tree?

200

The two methods that classes must override to work in a hash map/set

What are equals() and hashCode()?

200

This method is used to make a thread stop executing for the specified amount of time.

What is sleep()?

200

This algorithm for finding paths in an unweighted graph is implemented using a FIFO queue.

What is BFS (breadth-first search)?

200

This part of the Model-View-Controller architecture is responsible for handling user input

What is the controller?

300

A collection with nondeterministic ordering where items can be inserted in O(1) time (average case)

What is a hashset?

300

This hash set/map implementation resolves collisions by storing the value in the next unfilled slot

What is linear probing?

300

Each network connection is uniquely identified by these two things.

What are an IP address and port?

300

This step in backtracking decreases the number of states you need to check in the future.

What is pruning?

300

The kind of event that is sent when the user presses a button

What is an ActionEvent?

400

Preorder, inorder, and postorder traversals of the following binary tree:

https://f.trimill.xyz/tree-1.png


What are:
EPQJXMV

QPJEMXV

QJPMVXE

400

The time complexities of the following algorithms, respectively:

Binary search, merge sort, selection sort, linear search

What are O(log n), O(n log n), O(n^2), and O(n)?

400

The first provides connection-oriented, reliable communication over a network, while the second is connectionless and makes no reliability guarantees.

What are TCP and UDP?

400

The order that vertices would be reached by performing recursive DFS on this graph:

https://f.trimill.xyz/graph-4.png

(start at the vertex labeled S, visit neighbors alphabetically)

What is S A C B D F G E?

400

The layout pane that lets you place components in the center and along the top, bottom, left, and right edges

What is a BorderPane?

500

The min-heap resulting from the following operations:
- Insert 5, 3, 4, 1, 6
- Extract min
- Extract min
- Insert 2, 7

What is [2, 4, 5, 6, 7]?

https://f.trimill.xyz/heap-1.png



500
The steps of performing insertion sort on the following list (show the list after each iteration):

9 1 6 4 3


What are:
1 9 6 4 3
1 6 9 4 3
1 4 6 9 3
1 3 4 6 9
?

500

This process of storing data in memory before writing it to the disk makes IO more efficient. Java provides reader and writer classes that handle this for you.

What is buffering?

500

The next step of Dijkstra's algorithm in the following graph:

https://f.trimill.xyz/graph-3.png

(green vertices have been visited, blue ones have not)

What is visiting vertex D?

500

This pattern can be used to let the model send updates to the view when something changes

What is the observer pattern?

M
e
n
u