Welcome to MATH 8650: Advanced Data Structures (Fall 2016)
Instructor: Dr. Timo Heister, heister@clemson.edu, http://www.math.clemson.edu/~heister/
Meeting time: Tue/Thu 2:00pm3:15pm, Martin M204
Please contact me via email for questions, appointments, etc..
Course Description
This course is designed to introduce students to advanced data structures and algorithms from computer science. The goal is to provide a solid foundation for sophisticated software development, research in computational mathematics, and other computational problems.
We will be using the Python programming language for weekly exercises and larger group projects.
Handouts and Resources
 This site: http://www.math.clemson.edu/~heister/math8650fall2016/
 Blackboard: http://bb.clemson.edu (grades, materials, etc.)
 No required textbox. Reading material will be supplied.
 Syllabus
Notes

 introduction
 syllabus
 outline of the class
 python intro (intro.pdf)
:

 iteration/recursion/induction
 Landau / Big O Notation, https://en.wikipedia.org/wiki/Big_O_notation
 work on HW01
:

 binary search
 sorting (insertion sort, merge sort)
:

 divide and conquer and complexity
 summary about sorting algorithms, optimal complexity, merge sort
 Abstract Data Types, mathematical definition
 Stacks and stack implementations (linked list, array, …)
 Python List and resizing strategy: source code
 Python sorting (Timsort): description
:

 measuring complexity
 ADT Queue
 ADT Deque: https://en.wikipedia.org/wiki/Doubleended_queue
 queue using single linked list with tail pointer
 deque implementation using doublylinked list
:

 deque implementations: circular array, linked blocks
 Python implementation: linked blocks
 work on HW04
:

 dictionaries, hash tables
 collision handling: https://en.wikipedia.org/wiki/Hash_table#Open_addressing
 see dict_{demo}.ipynb

Python implementation: notes code explanation
:
Class Schedule
See http://www.registrar.clemson.edu/pdf/academicCalendar2016.pdf and http://www.registrar.clemson.edu/html/examSched.htm for important dates.
Date: 20160908 15:23:07 EDT
HTML generated by orgmode 6.33x in emacs 23