CSE 260/CSE261 - Fall 2022

Computer Science B: Honors

Data Structures and Programming Abstractions

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)
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 1-2: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: MoWe 2:40 - 4:00PM, Zoom (see Blackboard for link)
  • Labs: MoWe 4:25 - 5:45PM, Computer Science 2120 and Zoom (see Blackboard for link)

Lecture Notes and Reading Assignments

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

Week Date Lecture Topics/Notes Readings
1 Mo. 8/22 Administrative (course information) n/a
We. 8/24 Generics Read Liang ch. 19
2 Mo. 8/29 Generics (cont.) n/a
We. 8/31 Lists, Stacks, Queues, and Priority Queues Read Liang ch. 20
3 Mo. 9/5 No classes in Session (Labor Day - Observed) See Stony Brook Calendars here: http://www.stonybrook.edu/commcms/registrar/calendars/academic_calendars.html
We. 9/7 Lists, Stacks, Queues, and Priority Queues (cont.) n/a
4 Mo. 9/12 Sets and Maps Read Liang ch. 21, Collections and Aggregates in Java 8
We. 9/14 Developing Efficient Algorithms Read Liang ch. 22
5 Mo. 9/19 Developing Efficient Algorithms (cont.) n/a
We. 9/21 Developing Efficient Algorithms (cont.) n/a
6 Mo. 9/26 Midterm 1 Review See Blackboard here:http://blackboard.stonybrook.edu
We. 9/28 MIDTERM EXAM 1: takehome closed book exam, during class time (80 minutes) with LockDown Browser with Monitoring n/a
7 Mo. 10/3 Developing Efficient Algorithms (cont.) n/a
We. 10/5 Sorting Read Liang ch. 23
8 Mo, 10/10 No classes in Session (Fall Break) See Calendars
We. 10/12 Implementing Lists, Stacks, Queues, and Priority Queues Read Liang ch. 24
9 Mo. 10/17 Implementing Lists, Stacks, Queues, and Priority Queues (cont.)  n/a
We. 10/19 Binary Search Trees Read Liang ch. 25, Binary Search Trees Visualization
10 Mo. 10/24 AVL Trees Read Liang ch. 26
We. 10/26 Hashing Read Liang ch. 27
11 Mo. 10/31 Midterm 2 Review See Blackboard here:http://blackboard.stonybrook.edu
We. 11/2 MIDTERM EXAM 2: takehome closed book exam, during class time (80 minutes) with LockDown Browser with Monitoring n/a
12 Mo. 11/7 Graphs Read Liang ch. 28, Graphs Visualization
We. 11/9 Graphs (cont.) n/a
13 Mo. 11/14 Weighted Graphs Read Liang ch. 29
We. 11/16 Classification of Programming Languages Read Scott. ch. 1
14 Mo. 11/21 Functional Programming in SML n/a
We. 11/23 Thanksgiving Break - No classes in Session See Stony Brook Calendars here
15 Mo. 11/28 Functional Programming in SML (cont.)  n/a
We. 11/30 Functional Programming in SML (cont.)  n/a
16 Mo. 12/5 Optional (if time permits): Names, Scopes, and Bindings , Parsing , Semantics , Logic Programming Read Scott. chs. 2,3,4
Final exam   FINAL EXAM: takehome closed book exam, Wednesday, December 7, 2022, 5:30-7:30pm, with LockDown Browser with Monitoring n/a

Page maintained by Paul Fodor