We think you have liked this presentation. If you wish to download it, please recommend it to your friends in any social system. Share buttons are a little bit lower. Thank you!
Presentation is loading. Please wait.
Modified over 4 years ago
Data Structures, Spring 2004 © L. Joskowicz 1 DAST – Final Lecture Summary and overview What we have learned. Why it is important. What next.
Data Structures, Spring 2004 © L. Joskowicz 2 What have we learned? This course can be viewed as a thorough introduction to the main directions in Computer Science: – Theoretical computer science algorithms design and rigorous analysis –Programming and implementations Abstract data types, encapsulation, data structures –The combination of the two
Data Structures, Spring 2004 © L. Joskowicz 3 Topics 1.Tools for algorithm analysis 2.Sorting 3.ADTs and Data structures 4.Graph algorithms 5.Special topic: Huffman coding Extensive hands-on JAVA programming
Data Structures, Spring 2004 © L. Joskowicz 4 1. Tools for algorithm analysis Algorithm correctness –Loop invariants –Formally proving properties of algorithms Algorithms complexity analysis –Time and space complexity measures –Asymptotic complexity functions: O, Θ, Ω –Worst case, average case, best case –Upper and lower bounds –Amortized, expected. –Recurrence equations: how to formulate and solve them. The Master theorem.
Data Structures, Spring 2004 © L. Joskowicz 5 2. Sorting Sorting is a basic operation of many algorithms! Comparison-based algorithms –Reviewed Insertion Sort, Merge-Sort, Bubble-sort –Quick-Sort and its complexity analysis –Randomization –Lower bound proof –Heap sort Non-comparison based algorithms –Counting sort –Radix sort –Bucket sort
Data Structures, Spring 2004 © L. Joskowicz 6 3. ADTs and Data Structures (1) Ordered collections: insert, remove, first, last, find Stacks: push, pop, top –Array and Linked List implementations Queues: enqueue, dequeue, front –Circular array, Linked List Priority Queues: insert, min, delete-min, decrease-key –Binary Heap (array and binary tree implementation). Prefix-code tree: Binary tree
Data Structures, Spring 2004 © L. Joskowicz 7 Sorted Set: insert, remove, find, find-kth, min, max, successor, predecessor. –Balanced binary trees: Red-Black Trees, AVL trees, B-trees. Dictionaries and Tables: insert, remove, find –Hash tables: chaining and open addressing implementation. 3. ADTs and Data Structures (2)
Data Structures, Spring 2004 © L. Joskowicz 8 Graphs –Adjacency lists –Adjacency matrix Disjoint Sets: MakeSet, FindSet, Union –Linked lists –Trees 3. ADTs and Data Structures (3)
Data Structures, Spring 2004 © L. Joskowicz 9 4. Graph algorithms Graph and shortest path properties Unweighted graph traversals: BFS, DFS Strongly Connected Components: SCC Minimum spanning tree algorithms: MST –Prim, Kruskal Weighted shortest path algorithms: –Dijkstra’s shortest paths algorithm –Bellman-Ford shortest path algorithm All-shortest path algorithms –Floyd-Warshall algorithm; Transitive closure
Data Structures, Spring 2004 © L. Joskowicz 10 5. Special topic: Huffman coding Prefix code properties Optimal coding Greedy algorithm for optima code construction
Data Structures, Spring 2004 © L. Joskowicz 11 Important Computer Science concepts Mathematical tools for algorithm analysis. Proving algorithm correctness. Lower bounds: show that no algorithm can do better than a certain bound. Algorithmic paradigms: –Randomization –Heuristics –Greedy methods –Dynamic programming How to design and adapt an ADT.
Data Structures, Spring 2004 © L. Joskowicz 12 ADTs and Data Structures The notion of an ADT: The interface. The notion of the data structure: algorithms and ways to implement the ADT efficiently. Preparation for more abstract design of algorithms you will see in the Algorithms course.
Data Structures, Spring 2004 © L. Joskowicz 13 What next? Core courses Algorithms A and B Computability Elective courses Artificial Intelligence Computational geometry Cryptography …
Data Structures, Spring 2004 © L. Joskowicz 14 בהצלחה!!
©Brooks/Cole, 2003 Chapter 12 Abstract Data Type.
1 Greedy 2 Jose Rolim University of Geneva. Algorithmique Greedy 2Jose Rolim2 Examples Greedy Minimum Spanning Trees Shortest Paths Dijkstra.
Review. What to know You are responsible for all material covered in lecture, the readings, or the programming assignments There will also be some questions.
Jan Welcome to the Course of Advanced Algorithm Design (ACS-7101/3)
CSCE 210 Data Structures and Algorithms
Midterm 2 Overview Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
COMP 122 – Design and Analysis of Algorithms Spring 2004 MW 11:00-12:15, SN 014 Instructor:Jack Snoeyink TA: Nathan Fisher SN.
DAST, Spring © L. Joskowicz 1 Data Structures – LECTURE 1 Introduction Motivation: algorithms and abstract data types Easy problems, hard problems.
TDDB57 DALG-C, DALG Exam Requirements Jan Maluszynski - HT 2006DALG-C.1 TDDB57 – DALG-C Examination Requirements.
Course Review COMP171 Spring Hashing / Slide 2 Elementary Data Structures * Linked lists n Types: singular, doubly, circular n Operations: insert,
Dynamic Sets and Data Structures Over the course of an algorithm’s execution, an algorithm may maintain a dynamic set of objects The algorithm will perform.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2005 Lecture 1 Introduction/Overview Text: Chapters 1, 2 Wed. 9/7/05.
Recurrences / HW: 2.4 Quiz: 2.1, 4.1, 4.2, 5.2, 7.3, 7.4 Midterm: 8 given a recursive algorithm, state the recurrence solve a recurrence, using Master.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Spring, 2001 Final Review Mon. 5/14-Wed. 5/16.
EXAM REVIEW CSC 172 SPRING 2004 LECTURE 26. Want to TA for next semester?
1 Summary of lectures 1.Introduction to Algorithm Analysis and Design (Chapter 1-3). Lecture SlidesLecture Slides 2.Recurrence and Master Theorem (Chapter.
Instructor: Dr. Sahar Shabanah Fall Lectures ST, 9:30 pm-11:00 pm Text book: M. T. Goodrich and R. Tamassia, “Data Structures and Algorithms in.
Teaching Teaching Discrete Mathematics and Algorithms & Data Structures Online G.MirkowskaPJIIT.
© 2020 SlidePlayer.com Inc. All rights reserved.