ITEC 360: Exam 1 topics - Spring 2020
Updates :
- 2020 Mar 29 08:05:25 PM: Clarified about chapter 1 graphs and dfs/bfs.
- 2020 Mar 29 08:05:25 PM: Removed draft
- Coverage
- Appendix A (Math), Chapters 2 (Asymptotic analysis), 3 (Brute Force), 4 (Decrease and Conquer)
- Lecture and notes, supplemented by relevant sections of the text
- Homeworks
- Chapter 1: Introduction
- Graphs: Only enough to do DFS and BFS of directed and undirected graphs
- Differentiate between a directed and undirected graph.
- Define, give the space efficiency of,
and use the adjacency list and adjacency matrix
data structures for graph representation.
- Define these terms for graphs: node, vertex, edge, acyclic, cycle, tree.
- Well, you do have to know enough about graphs to do DFS and BFS.
- Appendix A: Math
- Give an informal definition of a logarithm
- Distinguish among log, lg, and ln.
- Recognize and describe relations among exponentials and logarithms.
- State and apply properties of logarithms
- Give closed forms for common summations
- Recognize, and use floor and ceiling notation.
Write inductive proofs
- Chapter 2: Asymptotic analysis
- Define and be able to determine among Best, Worst,
Expected, performance of an algorithm.
- Know the Best, Worst, Expected, performance of a number
of common algorithms (eg sorts, search, factorial, nested loops)
- Give the formal definitions of Big O, Ω, Θ.
- Give alternate formal definitions of Big O, Ω, Θ using limits.
- Describe the relationship among: O, Ω, Θ
- Describe the meaning of little o.
- Prove that f(n) is O(g(n)), and similarly for Ω, and Θ.
- Explain and appropriately use notation such as f(n) = O(g(n)) and f(n)
∈ O(g(n)).
- State and apply properties of order.
- Recognize relative order of various common functions
- Describe the importance of order in determining the size problem
that can feasibly be solved by an algorithm.
- Recognize when we can ignore lower order terms and explain why.
- Analyze the order of non-recursive algorithms
-
Analyze the order of recursive algorithms (see also Appendix B)
- Chapter 3: Brute Force and Exhaustive Search
- Explain what brute force and exhaustive search algorithms are.
- Explain the pros and cons of brute force and exhaustive search as approaches to solving a problem.
- Describe a solution for or solve a simple instance of the following problems:
- String matching
- Closest pair
- Convex Hull
- Traveling Salesman
- Knapsack
- Assignment
- Define and perform, using a stack, a depth-first search of a graph.
- Define and perform, using a queue, a breadth-first search of a graph.
- Chapter 4: Decrease and Conquer
- List and describe the steps of the Decrease and Conquer approach.
- List and describe different approaches to the Decrease
and Conquer approach.
- Describe and perform the following algorithms and explain how each illustrates the decrease and conquer approach:
- Topological sort (DFS and source elimination)
- Binary Search
- Median and selection problems
(quick select)
- Binary search tree operations
-
Nim games
NOT ON EXAM
- Chapter 1: Introduction
- Graphs: You do need to know enough to do DFS and BFS of directed and undirected graphs
- Other than knowing DFS and BFS, the following will not be on the exam:
- Differentiate between a directed and undirected graph.
- Define, give the space efficiency of,
and use the adjacency list and adjacency matrix
data structures for graph representation.
- Define these terms for graphs: node, vertex, edge, acyclic, cycle, tree.
--
ITEC 360 Home Page,
--
Dr. Okie's Home Page,