80 likes | 215 Views
ITK179 Final, 150 points. May 4, Tue. 10:00 am – 12:00 pm STV 139A. Closed book, notes, and no computer is allowed.
E N D
ITK179 Final, 150 points May 4, Tue. 10:00 am – 12:00 pm STV 139A • Closed book, notes, and no computer is allowed. • Everyone is allowed to bring a self-preparedhand-written crib to the test. You can write down anything on both sides of three pieces of letter-sized paper. You can’t share the crib during the test. ITK 179
How to prepare (1): • Follow the theme on the lecture slides. For example, what are ADT, Collection and its operations, JCF, and so on? Two views of Data Type? • All algorithms shown on the slides must be understood, and you have to know how to write a similar one if some requirement is changed. ITK 179
How to prepare (2): • What is inheritance? How to present it in UML? • What is the generic type? How to define a generic type in Java? • What is error handling? What type of error we may have? • How does Java handle error? • What is the Asymptotic notation? What’s good about it? • What is the big-O notation. Why we can throw away “less” significant parts? ITK 179
How to prepare (3): • What is a List? • What are the basic operations of a List? • What is the difference between Dynamic and Static arrays? • What is the advantage and disadvantage of using arrays? • How to implement the ArrayList? ITK 179
How to prepare (4): • Same questions to the single-linked list. • What is the inner class? How to define an inner class in Java? In particular, what inner class of the single-linked list needs to have? • How to implement the basic operations of the singled-linked list. • Compare the cost of performing those basic operations on arrays and single-linked list. ITK 179
How to prepare (5): • Operations on double–linked lists. • What is Deep copy? Shallow copy? How to achieve deep copy using copy constructors, clone methods (on lists, array, or any objects that need to.) • What is the advantage of using clone methods over copy constructors. • What is an interface? Marker interface? ITK 179
How to prepare (6): • Stacks and Queues (know what are they and how to implements them using a chosen data structure). • Applications of using stacks (i.e., evaluation of arithmetic expressions, going through a maze). • Iterator (purpose, how to use, how to implement). ITK 179
How to prepare (7): • Recursion. • Search: binary search. • Binary Search Trees (and opertations on them) • Binary Heaps. ITK 179