CSE 373, Summer 2018: Home

Course Announcements

  • Homework and midterm solutions posted! Look in the final practice materials on the exams page.
  • Final Review is released! It is due Wed 8/15 by 11:59pm

Upcoming due dates

Note: unless otherwise noted, all assignments are due at 11:59pm.

Final Review

Calendar

Week 1
Mon, June 18: Introduction to ADTs and Data Structures
Wed, June 20: Design Decisions, Tradeoffs, and Stacks

Installing and Setting up Eclipse

Suggested reading: Weiss 3.6

Code not posted because it is incorporated in your homework.

Thur, June 21: Section 1: 143 Review and Design Decisions
Fri, June 22: Queues, Testing, and Working with Code
Week 2
Mon, June 25: How to Measure Efficiency
Wed, June 27: Asymptotic Analysis + Recurrences

Project 1 Partner Signup

Suggested reading: Weiss Chapter 2 - Algorithm Analysis

Thurs, June 28: Section 2: Asymptotic Analysis
Fri, June 29: Master Theorem, Maps, and Iterators
Week 3
Mon, July 2: Binary Search Trees

Suggested reading: Weiss 4.4 AVL Trees(optionally 4.5 Splay trees)

Wed, July 4: No Class - Independence Day
Thurs, July 5: Section 3: BST and AVL Tree
Fri, July 6: Introduction to Hash Tables

Suggested reading: Weiss: 5.1-5.3 Hashing (up to Separate Chaining)

Week 4
Mon, July 9: Hash Open Indexing

Suggested reading: Weiss:5.4 Hash Tables Without Linked Lists, 5.5 Rehashing

Wed, July 11: Priority Queues and Heaps

Suggested reading: Weiss:6.1 (Model) - 6.3.3 (Basic Heap Operations), 7.5 Heapsort

Thurs, July 12: Section 4: Dictionaries and Heaps
Fri, July 13: Sorting

Suggested reading: Weiss: Chapter 7 - Sorting (7.1-7.2, 7.5, 7.6)

AlgoRythmics Dancing Sorts

Week 5
Wed, July 18: Software Engineering - Git, Eclipse, Pair Programming, and Test Driven Development

Install Git for the command line: Windows Download (on Windows, make sure you install with the option to use Git Bash), on Mac, type 'git' on the command line, and install XCode command line tools if it asks

Git Cheat Sheet

Thur, April 26: Section 5: Midterm Review
Fri, July 20: Midterm Exam :)
Week 6
Mon, July 23: Sorting, Intro to Graphs

Suggested reading: Weiss: Chapter 7 - Sorting (7.1-7.2, 7.5, 7.6)

Sorting Algorithm Visualizations

Project 3 Partner Signup

Wed, July 25: Graphs: Definitions and Implementation

Suggested reading: Weiss Chapter 9 Graph Algorithms (9.1 Definitions, 9.2 Representation of Graphs)

Homework 5 posted

Thurs, July 26: Section 6: Sorting and Graphs
Fri, July 27: Graph Traversals

Suggested reading: Weiss 6.1 - 6.3

Week 7
Mon, July 30: More Graph Traversals

Suggested reading: Weiss 6.1 - 6.3

Wed, Aug 1: Dijkstra’s Algorithm and Topological Ordering

Suggested reading: Weiss 9.2 - 9.3

Thurs, Aug 2: Section 7: Graphs Practice
Fri, Aug 3: Minimum Spanning Trees

Suggested reading: Weiss chapter 8 (The Disjoint Set Class), Weiss 9.5 (Minimum Spanning Trees)

Week 8
Mon, Aug 6: Dynamic Programming

Suggested reading:Weiss 10.3 (dynamic programming)

Wed, Aug 8: Dynamic Programming 2

Suggested reading:Weiss 10.3 (dynamic programming)

Fri, Aug 10: Technical Interviews(in GUG 220) Guest Speaker: Kendra Yourtee
Week 9
Mon, May 21: Floyd-Warshall and Path Reconstruction
Wed, May 23: Final Review
Thurs, May 24: Final Review
Fri, Aug 17: Final Exam!!!