Data Structures and Algorithms

Data Structures and Algorithms
Slide Note
Embed
Share

This summary delves into the underlying data structures and main operations of arrays, linked lists, queues, stacks, trees, priority queues, maps, ordered maps, and graphs. It covers a wide range of topics including insertions, deletions, traversals, and various operations performed on different data structures.

  • Data Structures
  • Algorithms
  • Arrays
  • Linked Lists
  • Trees

Uploaded on Feb 15, 2025 | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. Data Structures and Algorithms A SUMMARY

  2. Data Structures Underlying Data Structures Main Operations Data Structures Arrays, Linked lists Queues, Stacks Trees Priority Queues Maps Ordered Maps Graphs

  3. Data Structures Underlying Data Structures Main Operations Data Structures Arrays, Linked lists Queues, Stacks Trees Arrays, Linked lists Arrays, Linked structures Priority Queues Arrays, Linked lists, Heaps Maps Arrays, Hash tables Ordered Maps Sorted arrays, Skip lists, Binary search trees , AVL trees, (2,4) trees Adjacency lists, matrices (arrays), Edge lists Graphs

  4. Data Structures Underlying Data Structures Main Operations Data Structures Arrays, Linked lists Get, Set, Traverse, Insert, Delete Queues, Stacks Trees Arrays, Linked lists Insert: enqueue, push Delete: dequeue, pop Children, Parent Traverse: preorder, inorder, postorder, breadth-first Insert: put Delete: removeMin Set: replaceKey, replaceValue Find: get Insert: put; Delete: remove Map operations plus floorEntry, ceilingEntry subMap getAdjacentVertices, getEdge Insert/delete vertex/edge Traverse: depth-first, breadth-first Arrays, Linked structures Priority Queues Arrays, Linked lists, Heaps Maps Arrays, Hash tables Ordered Maps Sorted arrays, Skip lists, Binary search trees , AVL trees, (2,4) trees Adjacency lists, matrices (arrays), Edge lists Graphs

  5. Data Structures Underlying Data Structures Main Operations Data Structures Arrays, Linked lists Get, Set, Traverse, Insert, Delete Queues, Stacks Trees Arrays, Linked lists Insert: enqueue, push Delete: dequeue, pop Children, Parent Traverse: preorder, inorder, postorder, breadth-first Insert: put Delete: removeMin Set: replaceKey, replaceValue Find: get Insert: put; Delete: remove Map operations plus floorEntry, ceilingEntry subMap (Traverse) getAdjacentVertices, getEdge Insert/delete vertex/edge Traverse: depth-first, breadth-first Arrays, Linked structures Priority Queues Arrays, Linked lists, Heaps Maps Arrays, Hash tables Ordered Maps Sorted arrays, Skip lists, Binary search trees , AVL trees, (2,4) trees Adjacency lists, matrices (arrays), Edge lists Graphs

  6. General Algorithm Types Types Characteristics Examples Brute Force try all possibilities usually the baseline algorithm Basic pattern matching

  7. General Algorithm Types Types Characteristics Examples Brute Force try all possibilities usually the baseline algorithm Basic pattern matching Greedy given multiple possibilities at each iteration select the best one and do not look back may not be optimal for some problems Dijkstra (Shortest Path), Kruskal, Prim (Minimum Spanning Tree), Huffman (Compression)

  8. General Algorithm Types Types Characteristics Examples Brute Force try all possibilities usually the baseline algorithm Basic pattern matching Greedy given multiple possibilities at each iteration select the best one and do not look back may not be optimal for some problems Dijkstra (Shortest Path), Kruskal, Prim (Minimum Spanning Tree), Huffman (Compression) Divide and Conquer decompose into separate subproblems and compose solutions usually recursive and top-down Mergesort, Quicksort

  9. General Algorithm Types Types Characteristics Examples Brute Force try all possibilities usually the baseline algorithm Basic pattern matching Greedy given multiple possibilities at each iteration select the best one and do not look back may not be optimal for some problems Dijkstra (Shortest Path), Kruskal, Prim (Minimum Spanning Tree), Huffman (Compression) Divide and Conquer decompose into separate subproblems and compose solutions usually recursive and top-down Mergesort, Quicksort Dynamic programming decompose into reoccurring subproblems and compose solutions store sub-solutions and use bottom-up Longest Common Subsequence, Matrix Chain Multiplication

  10. Leading to Term Project Lab exercises Understanding of Data Structures and Algorithms (DS&A) Homework assignments Implementation of DS&A further understanding and implementation issues Term project Choose/design/implement DS&A deeper understanding tradeoffs and which to use Standard libraries for data structures might not be enough

  11. Problem Solving & Term Project Quality of solution Accuracy/points/ Algorithms Speed of solution Time Algorithms and data structures Space usage of solution Memory Data structures

  12. Final Exam Dec 9, Monday, 6-8pm, regular classroom As stated in the syllabus (and FIT website) Graphs , Text Processing, Search Trees, Sorting Materials after Test 2 (indirectly on prior materials) Christmas Special Extra credit More questions/points

Related


More Related Content