SI221: Data Structures

Spring AY07

Assoc. Prof. D. M. Needham

Page Last Updated: April 23, 2007

 

January 2007

Sunday

Monday

Tuesday

Wednesday

Thursday

Friday

Saturday

 

1

 

2

3

 

4

 

 

5

Class1

Course policy, course overview, the Unix lab 

Tentative syllabus

6

7

8

Class 2

Programming In Unix using g++ puTTy and winAxe && Slides

 

 

9

 

10

Class 3

Pointer review, indirection, de-referencing

Slides

11

Lab1

Unix Basics

 

xEmacs Quick Reference Card

12

 

13

14

15

Martin Luther King's Birthday

16

 

17

Class 4

Intro to ADTs, attributes, behavior, encapsulation, member functions

Slides

18

Lab2

chmod, makeFile, and  OOP

19

 

20

21

22

NC. Work on ADT

23

 

24

Class 5

Friend functions, default arguments, copy constructors

Slides

25

Lab 3

OOP: Constructors and Member Functions

26

 

27

28

29

Class 6

Carrano Chap3

List Abstract Data Type, (Array Implementation) list construction,

Insert

Slides

 

30

 

31

Class 7

List ADT operations continued. Remove, retrieve

 

 

 

 

 

 

February 2007

Sunday

Monday

Tuesday

Wednesday

Thursday

Friday

Saturday

 

 

 

 

 

1

Lab4

List ADT (array implementation) and debugging with gdb

2

 

3

4

5

Class 8

Carrano Chap 4

List Abstract Data type (Linked List Implementation)

Slides

 

6

 

7

Class 9

List ADT (Linked List) operations

8

Lab5

List ADT (Linked List implementation)

9

 

10

 

11

12

 

Class 10

Doubly-Linked Lists

x-week

13

 

 

 

x-week

14

 

Class 11

Exam Review

 

x-week

15

6Wk

Written

Exam

x-week

16

 

 

 

x-week

17

 

18

19

President's 

Day

20

 

21

Class 12

Exam Debrief

22

Catch up lab (Linked List ADT)

23


 

24

 

25

26

Class 13

Carrano Chap 6

Stacks

Slides

 

27

 

 

28

Class 14

Stack Implementation

 

 

 

 

 

 

March 2007

Sunday

Monday

Tuesday

Wednesday

Thursday

Friday

Saturday

 

 

 

 

1

Lab6

Stacks

 

2

 

3

 

4

5

NC Work on Stacks

6

 

7

Class 15

Carrano Chap 7

Queues

Slides

8

Lab 7

Queues

 

9

 

10

11

12

Spring

Break

13

Spring

Break

14

Spring

Break

15

Spring

Break

16

Spring

Break 

17

 

18

19

NC Work on Queues

 

20

 

21

Class 16

Carrano Chap 8

Advanced C++ topics

 

inheritance, public, protected, private members, containment

Slides

 

Project 1 Assigned

 

22

Lab 8

Inheritance

 

23

 

24

 

25

26

 

Class 17

polymorphism, static binding, dynamic binding, virtual member functions,

27

 

 

 

 

 

28

 

Class 18

pure virtual member functions, templated classes,

friend functions.

29

 

Lab 9

Polymorphism

 

30

 

 

 

 

 

31

 

 

April 2007

Sunday

Monday

Tuesday

Wednesday

Thursday

Friday

Saturday

1

2

Class 19

Chapter 9 Algorithm Efficiency, a close look at Selection Sort

Slides


x-week

3

 

 

 

 

x-week

4

Class 20

Big O Growth rates, Worst case and Evil adversaries

 

 

x-week

5

Lab

Work on Project 1

 

 

x-week

6

 

 

 

 

x-week 

7

8

9

Class 21

Sequential Search, Binary Search, Bubble sort

Big O

 

Project 1 due start of class

10

 

11

Class 22

Mergrsort, Quicksort, Radix Sort Big O

12

 

Lab 10

Algorithm Efficiency

13

 

14

 

15

16

Class 23

Chapter 10. Trees, Binary Trees, complete and balanced trees

Slides

17

 

18

 

Class 24

Binary Search Trees

19

Lab 11

Binary Search Trees

20

 

21

 

22

23

Class 25

Tree Traversals

24

 

25

Class 26

SOFs

 

 

26

 

Exam

Review

Final Written

Exam

 

Final Exam Info

 

Time: Mon, 7 May 1330 

Location:  TBA