Course Review ♢ COMP2521 ♢ (22T3)
Course Review♢ COMP2521 (22T3) ♢ Week 10 ♢ [0/9]
COMP1511
- gets you thinking like a programmer
- solving problems by developing programs
- expressing your ideas in the C language
COMP2521
- gets you thinking like a computer scientist
- knowing a set of fundamental techniques/structures
- able to reason about their applicability/effectiveness
Course Review♢ COMP2521 (22T3) ♢ Week 10 ♢ [1/9]
At the end of this course you should be able to:
- analyse performance characteristics of algorithms (A)
- measure performance behaviour of programs
- choose/develop effective data structures (DS)
- choose/develop algorithms (A) on these data structures (DS)
- reason about effectiveness of data structures + algos
- package a set of DS+A as an abstract data type
- develop and maintain 9999-line C programs
Course Review♢ COMP2521 (22T3) ♢ Week 10 ♢ [2/9]
For each specific data type, we considered:
- implementation in C (data structures, functions)
- operations (e.g. new, insert, delete, search, traverse)
- analysis of efficiency of operations
- applications of the data type
Abstract data types
- interface vs implementation
- defining ADTs in C
Problem-solving approaches
- recursion, divide-and-conquer, generate-and-test
Sorting methods
- simple sorts: selection, insertion, bubble
- better sorts: mergesort, quicksort
- complexity of various sorting algorithms
Course Review♢ COMP2521 (22T3) ♢ Week 10 ♢ [3/9]
Linear structures
- linked-lists: singly linked, doubly linked
- sets, stacks, queues, priority queues, heaps
Trees
- tree terminology, tree properties
- binary search trees, recursive algorithms
- tries, radix searching
Balanced search trees
- varieties of balanced trees: splay, red-black, ...
- tree rotations, tree joins, tree merge
Hash tables
- hash functions
- implementation/use of hash tables
- collision handling: chains, linear probe, double hash
Graphs
- graph terminology, graph properties
- implementation of graphs: adjacency matrix, ...
- graph search: depth-first, breadth-first
- minimum spanning tree, shortest path
Course Review♢ COMP2521 (22T3) ♢ Week 10 ♢ [4/9]
Course Review♢ COMP2521 (22T3) ♢ Week 10 ♢ [5/9]
Please see the sample exam ....
Course Review♢ COMP2521 (22T3) ♢ Week 10 ♢ [6/9]
How to revise?
- re-read lecture slides and example programs (see web)
- review tute and lab exercises and assignments
- come to a Pre Exam consultation to resolve problems, they
will be listed on the class webpage later in Week-11
- write some programs
(programming is a skill that improves with practice)
Course Review♢ COMP2521 (22T3) ♢ Week 10 ♢ [7/9]
CATEI Evaluation available via myUNSW.
Tell us what you like/dislike about the course, we do take your input seriously.
Thanks ...
Course Review♢ COMP2521 (22T3) ♢ Week 10 ♢ [8/9]
T
h
a
t
'
s
A
l
l
F
o
l
k
s
Good Luck with the Exams
and with your future computing studies
☺ ☺ ☺ ☺ ☺
Course Review♢ COMP2521 (22T3) ♢ Week 10 ♢ [9/9]
Produced: 14 Nov 2022