CS1020LectureNote#11:
Hashing
Forefficientlookupinatable
LectureNote#11:Hashing
n
Objectives:
To understand how hashing is used to accelerate
table lookup
To study the issue of collision and techniques to
resolve it
n
References:
Chapter 13, section 13
CS1020LectureNote#10:
Sorting
Arrangingelementsinalistinorder
LectureNote#10:Sorting
n
Objectives:
To learn some classic sorting algorithms
To analyse the running time of these algorithms
To learn concepts such as in-place sorts and stable
sorts
Using
CS1020LectureNote#9:
AnalysisofAlgorithms
Measuringamountofresourcestorunanalgorithm
LectureNote#9:AnalysisofAlgorithms
n
Objectives:
To introduce the theoretical basis for measuring the
efficiency of algorithms
To learn how to use such measure to compa
CS1020LectureNote#7:
Recursion
TheMirrors
LectureNote#7:Recursion
n
Objectives:
To explain how recursion work
To demonstrate the application of recursion on some
classic computer science problems
To understand recursion as a problem solving
technique,
CS1020LectureNote#6:
StacksandQueues
TwobasicADTsandlineardatastructures
LectureNote#6:StacksandQueues
n
Objectives:
Able to define a Stack ADT, and to implement it with
array and linked list
Able to define a Queue ADT, and to implement it with
array an
CS1020LectureNote#5B:
ListADT&LinkedLists
Abstractionofalist(cont.)
LectureNote#5B:ListADT&Linked
Lists
n
Objectives:
Able to implement various variants of linked list
n
References:
Chapter 4, The List ADT, pages 227 233
Chapter 4, An Array-Based Imple
CS1020LectureNote#5A:
ListADT&LinkedLists
Abstractionofalist
LectureNote#5A:ListADT&Linked
Lists
n
Objectives:
Able to define a List ADT, a LinkedList ADT
Able to implement a List ADT with array
Able to implement a LinkedList ADT with linked list
Able
CS1020LectureNote#4:
AbstractDataType
Walls
LectureNote#4:ADT
n
Objectives:
Able to understand the need of data abstraction
Able to define ADT with Java Interface
(Java Interface: A group of related methods with empty bodies)
Able to implement data str
CS1020LectureNote#3:
ObjectOrientedProgramming
Part2
MoreOOPconcepts
LectureNote#3:OOPPart2
n
Objectives:
q
q
q
q
q
n
Introduce more predefined Java classes
Introduce inheritance (Skipped)
Using arrays
Introduce generics, allow operations that are not tie
CS1020LectureNote#2:
ObjectOrientedProgramming
Aparadigmshift:
Fromproceduraltoobjectorientedmodel
LectureNote#2:OOP
n
Objectives:
q
q
n
Understand major features of OOP
Able to use object oriented modeling to formulate
solution
References:
q
Chapter 2
n
CS1020DataStructuresandAlgorithms
I
LectureNote#1
IntroductiontoJava
LectureNote#1:IntrotoJava
n
Objectives:
q
q
n
Able to start writing Java programs
Able to translate most C programs learned in
CS1010 into Java programs
Reference:
q
Chapter 1
n
n
Sectio