Classroom: | MWF: 11:10a-11:00a, MCRey 315 |
Web page | www.cburch.com/cs/151/ |
Instructor: | Dr. Carl Burch |
E-mail: | ![]() |
Telephone: | 450-1377 (office); 548-0036 (home) |
Office: | MCRey 310 |
Office hours: | T 2:40-3:30, RF 10:10-11:00, R 3:40-4:30
drop-ins, appointments always welcome |
Tutor hours: | M 6-8 Katie Wright T 6-8 Don Bennett W 6-8 Don Bennett R 6-8 Katie Wright |
Data & Procedure textbook
Getting started with Eclipse
Java API
(alternate site)
Sauron submission system
(instructions)
The assignment of topics to days will change as the class progresses.
Textbook references are on the right, prefaced by a section symbol §.
Wed 27 Aug | Java review: Class elements §9.1 |
Fri 29 Aug | two-dimensional arrays
ADTs §1.1 using the List ADT §1.2.0–1.2.3 |
1 Sep | ![]() |
Wed 3 Sep | wrapper types
§1.2.2
implementing ArrayList §1.2.4 |
Fri 5 Sep | implementing ArrayList
§1.2.4
recursion §2.1 ![]() |
Mon 8 Sep | exceptions: try & catch
linked lists: Introduction §2.2.0 |
Wed 10 Sep | implementing LinkedList
§2.2.1
![]() |
Fri 12 Sep | implementing LinkedList, cont'd
§2.2.1
comparison with ArrayList §2.2.4 ![]() |
Mon 15 Sep | iterators
§2.2.3
for-each loops |
Wed 17 Sep | invariants
§3.1
exponentation algorithms §3.3 |
Fri 19 Sep | search algorithms
§3.2
data invariants §3.4 ![]() |
Mon 22 Sep | big O: introduction §4.0–4.1.1 |
Wed 24 Sep | ![]() |
Fri 26 Sep | exam portmortem
big O: examples §4.1.2 ![]() |
Mon 29 Sep | big O: examples
§4.1.2
simple sorting §4.2.1 |
Wed 1 Oct | mergesort
§4.2.2
quicksort §4.2.3 |
Fri 3 Oct | prime counting
§4.3
space efficiency §4.4 ![]() |
Mon 6 Oct | tree introduction §5.0–5.1.3 |
Wed 8 Oct | tree traversals
§5.1.4
![]() |
Fri 10 Oct | binary search trees
§5.2–5.2.1
![]() |
Mon 13 Oct | implementing TreeSet
§5.2.2
|
Wed 15 Oct | red-black trees
§5.3
Map ADT
§6.1
|
16-19 Oct | ![]() |
Mon 20 Oct | hash tables §6.2 |
Wed 22 Oct | hash table performance
§6.2.3
![]() |
Fri 24 Oct | hash functions
§6.3
stack introduction §7.1.0–7.1.1 evaluating postfix expressions §7.1.3 ![]() |
Mon 27 Oct | converting recursion to stacks (PDF handout) |
Wed 29 Oct | tree iterator
§7.1.4
queues §7.2.0 level-order traversal §7.2.2 |
Fri 31 Oct |
![]() priority queues §8.0–8.1 ![]() |
Mon 3 Nov | Swing GUIs (reading) |
Wed 5 Nov | ![]() |
Fri 7 Nov | Swing components
(§examples)
inner classes ![]() |
Mon 10 Nov | nested classes
packages and protection levels |
Wed 12 Nov | heaps
§8.2
![]() |
Fri 14 Nov | priority queue sorts
§8.3
![]() |
Mon 17 Nov | no class |
Wed 19 Nov | heapsort code
§8.3
![]() ![]() |
Fri 21 Nov | Dijkstra's algorithm
§8.4
![]() |
Mon 24 Nov | A* algorithm §8.4 |
26-30 Nov | ![]() |
Mon 1 Dec | regular expressions |
Wed 3 Dec | no class
![]() |
Fri 5 Dec | finite automata |
Mon 8 Dec | finite automata, cont'd |
Tue 9 Dec | ![]() |
Mon 15 Dec | ![]() |
18 Dec-11 Jan | ![]() |