CSE 260/CSE261 - Fall 2024

Computer Science B: Honors

Data Structures and Programming Abstractions

Instructor: Dr. Paul Fodor

http://www.cs.stonybrook.edu/~cse260


Course Description

Second part of a two-semester sequence, CSE 160 and CSE 260. Applies object-oriented programming methodology to data storage and manipulation on complex data sets, such as, binary trees, heaps, priority queues, balanced trees and graphs. Recursive programming is heavily utilized. Fundamental sorting and searching algorithms are examined along with informal efficiency comparisons. Intermediate-level programming language concepts and paradigms, including functional programming, basics of type systems, event-driven programming, program and data abstractions, and modularity.(https://www.stonybrook.edu/sb/bulletin/current/courses/cse/#260)

See Syllabus here (or in the above menu).


Youtube channel for a past semesters:https://www.youtube.com/playlist?list=PLRvJ_2dlxL9GmBr5cqA7N7oIhtAf_J3aW

Staff

Instructor: Dr. Paul Fodor
214 New Computer Science Department, Stony Brook University
Office hours: Mondays and Wednesdays 11AM-12:30PM on Google Meet only: https://meet.google.com/xyu-jhqc-bdx
Email: paul.fodor@stonybrook.edu
Phone: 1 (631) 632-9820


Class Time and Place

  • Lectures: TuTh 9:30-10:50AM, Computer Science 2120.
  • Labs:TuTh 11AM-12:20PM, Computer Science 2120.

Lecture Notes and Reading Assignments

The following schedule is tentative and subject to change. The homework assignments and labs are posted on Brightspace: http://blackboard.stonybrook.edu

Week Date Lecture Topics/Notes Readings
1 Tu. 8/27 Administrative (course information) n/a
Th. 8/29 Wrapper classes , Generics Read Liang ch. 19
2 Tu. 9/3 Generics (cont.) n/a
Th. 9/5 Lists, Stacks, Queues, and Priority Queues Read Liang ch. 20
3 Tu. 9/10 Lists, Stacks, Queues, and Priority Queues (cont.) n/a
Th. 9/12 Sets and Maps Read Liang ch. 21, Collections and Aggregates in Java 8
4 Tu. 9/17 Developing Efficient Algorithms Read Liang ch. 22
Th. 9/19 Developing Efficient Algorithms (cont.) n/a
5 Tu. 9/24 Developing Efficient Algorithms (cont.) n/a
Th. 9/26 Midterm 1 Review See Brightspace here:http://blackboard.stonybrook.edu
6 Tu. 10/1 MIDTERM EXAM 1: closed book in-person exam, in classroom, during class time (80 minutes) n/a
Th. 10/3 Developing Efficient Algorithms (cont.) n/a
7 Tu. 10/8 Developing Efficient Algorithms (cont.) n/a
Th. 10/10 Sorting Read Liang ch. 23
8 Tu. 10/15 Fall break (no class) n/a
Th. 10/17 Implementing Lists, Stacks, Queues, and Priority Queues Read Liang ch. 24
9 Tu. 10/22 Binary Search Trees Read Liang ch. 25, Binary Search Trees Visualization
Th. 10/24 AVL Trees Read Liang ch. 26
10 Tu. 10/29 Hashing Read Liang ch. 27
Th. 10/31 Hashing (cont.) n/a
11 Tu. 11/5 Midterm 2 Review See Brightspace here:http://blackboard.stonybrook.edu
Th. 11/7 MIDTERM EXAM 2: closed book in-person exam, in classroom, during class time (80 minutes) n/a
12 Tu. 11/12 Graphs Read Liang ch. 28, Graphs Visualization
Th. 11/14 Graphs (cont.) n/a
13 Tu. 11/19 Weighted Graphs Read Liang ch. 29
Th. 11/21 Classification of Programming Languages Read Scott. ch. 1
14 Tu. 11/26 Functional Programming in SML n/a
Th. 11/28 Thanksgiving break (no class) n/a
15 Tu. 12/3 Functional Programming in SML (cont.)  n/a
Th. 12/5 Optional (if time permits): Names, Scopes, and Bindings , Parsing , Semantics , Logic Programming Read Scott. chs. 2,3,4
Final exam   FINAL EXAM: Monday, December 16, 2024, 11:15-1:45 PM (120 minutes), closed book in-person exam, in classroom n/a

Page maintained by Paul Fodor