International Olympiad in Informatics (IOI)
Welcome to the International Olympiad in Informatics (IOI) Quiz! Test your knowledge on algorithms, data structures, and problem-solving techniques used in competitive programming.
Questions
What is the maximum number of edges in a tree with n nodes?
- n-1
- n
- n+1
- 2n-1
Which of the following sorting algorithms has the best worst-case time complexity?
- Bubble Sort
- Selection Sort
- Insertion Sort
- Merge Sort
What is the most efficient data structure for storing a collection of unique elements and quickly checking if an element is present?
- Array
- Linked List
- Hash Table
- Tree
Which of the following algorithms is used to find the shortest path between two nodes in a weighted graph?
- Dijkstra's Algorithm
- Bellman-Ford Algorithm
- Floyd-Warshall Algorithm
- Kruskal's Algorithm
What is the time complexity of finding the minimum element in an unsorted array using a linear search?
- O(1)
- O(log n)
- O(n)
- O(n^2)
Which of the following is a greedy algorithm?
- Dijkstra's Algorithm
- Prim's Algorithm
- Kruskal's Algorithm
- Traveling Salesman Problem
What is the name of the algorithm used to find all possible subsets of a set?
- Breadth-First Search
- Depth-First Search
- Backtracking
- Dynamic Programming
Which of the following is a dynamic programming problem?
- Longest Common Subsequence
- Knapsack Problem
- Traveling Salesman Problem
- Dijkstra's Algorithm
What is the name of the algorithm used to find the maximum flow in a network?
- Ford-Fulkerson Algorithm
- Edmonds-Karp Algorithm
- Dinic's Algorithm
- Push-Relabel Algorithm
Which of the following is a non-deterministic algorithm?
- Bubble Sort
- Selection Sort
- Insertion Sort
- Monte Carlo Simulation
What is the name of the algorithm used to find the convex hull of a set of points?
- Graham's Scan
- Jarvis's March
- QuickHull
- Gift Wrapping Algorithm
Which of the following is a divide-and-conquer algorithm?
- Merge Sort
- Quick Sort
- Heap Sort
- Radix Sort
What is the name of the algorithm used to find the minimum spanning tree in a weighted graph?
- Prim's Algorithm
- Kruskal's Algorithm
- Dijkstra's Algorithm
- Bellman-Ford Algorithm
Which of the following is a sorting algorithm that works by repeatedly swapping adjacent elements?
- Bubble Sort
- Selection Sort
- Insertion Sort
- Merge Sort
What is the name of the algorithm used to find the shortest path between two nodes in an unweighted graph?
- Breadth-First Search
- Depth-First Search
- Dijkstra's Algorithm
- Bellman-Ford Algorithm