Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Data Structures

San Diego State University via YouTube

Overview

This course covers the fundamentals of data structures, including complexity analysis, Java programming, linked lists, stacks, queues, hashes, trees, heaps, AVL trees, red-black trees, sorts, and Bloom filters. By the end of the course, students will be able to analyze the complexity of algorithms, implement various data structures in Java, and understand different sorting algorithms. The teaching method includes lectures, coding examples, and hands-on exercises. This course is intended for individuals interested in computer science, software development, or anyone looking to enhance their understanding of data structures and algorithms.

Syllabus

Welcome to Data Structures.
Complexity 1 Introduction to complexity.
Complexity 2 Big Oh Notation.
Complexity 3 Some examples of big-Oh notation.
Java 1 ObjectOrientedProgramming.
Java 2 ComparableGenerics.
Java 3 Introduction to Generic Programming.
Java 4 Parameterized Types.
Java 5 Autoboxing.
Java 6 Exceptions.
LinkedList 1 Introduction.
LinkedList 2 Nodes and Size.
LinkedList 3 Boundary Conditions.
LinkedList 4 addFirst().
LinkedList 5 addLast().
LinkedList 6 removeFirst().
LinkedList 7 removeLast().
LinkedList 8 remove and find.
LinkedList 9 peek().
LinkedList 10 Testing the list.
LinkedList 11 Iterators.
LinkedList 12 Double Linked Lists.
LinkedList 13 Circular Linked Lists.
Stacks and Queues 3 Using arrays to write stacks and queues.
Hashes 1 Introduction.
Hashes 2 Hash Functions.
Hashes 3 Collisions.
Hashes 4 Hash Functions for Strings.
Hashes 5 Compressing numbers to fit the size of the array.
Hashes 6 Make an integer positive.
Hashes 7 LoadFactor().
Hashes 8 Open Addressing.
Hashes 9 Chaining.
Hashes 10 Rehashing.
Hashes 11 the hash class.
Hashes 12 Review of the hash element inner class.
Hashes 13 Constructor for a chained hash..
Hashes 14 Review of constructors.
Hashes 15 add() and remove() methods.
Hashes 16 getValue().
Hashes 17 resize.
Hashes 18 KeyIterator.
Trees and heaps 1 Introduction.
Heaps 1 Introduction and Tree levels.
Heaps 2 Add Remove.
Heaps 3 TrickleUp.
Heaps 4 TrickleDown.
Heaps 5 HeapSort.
Trees 2 Complete and Full.
Trees 3 Traversal.
Trees 4 Expression Trees.
Trees 5 Node Class.
Trees 6 recursive add.
Trees 7 Contains.
Trees 8 Remove.
Trees 9 Introduction to rotations.
Trees 10 Rotations.
Trees 11 Coding Rotations.
AVL 1 Introduction.
AVL Tree 2 Nodes.
AVL Tree 3 Adding a node.
AVL Tree 4 recursive add for an AVL tree.
AVL Tree 5 checking balance in an AVL tree.
AVL Tree 6 Rebalancing AVL trees.
AVL Tree 7 complete example of adding data to an AVL tree..
Red Black Tree 1 The Rules.
Red Black Trees 2 Example of building a tree.
Red Black Tree 3 - Classes.
Red Black Tree 4 - Add methods.
Red Black Tree 5 checking violations in the tree.
Red Black Tree 6 The Rotate method.
Red Black Tree 7 left rotate.
Red Black Tree 8 leftRightRotate.
Red Black Tree 9 height.
Red Black Tree 10 number of black nodes.
Sorts 1 Introduction to sorts.
Sorts 2 Selection Sort.
Sorts 3 Insertion Sort.
Sorts 4 Insertion Sort Code.
Sorts 5 Shell Sort.
Sorts 6 Merge Sort.
Sorts 7 Merge Sort Code.
Sorts 8 Quick Sort.
Sorts 9 Quick Sort Worst Case.
Sorts 10 Quick Sort Code.
Sorts 11 Radix Sort.
Sorts 12 Sort Summary.
Bloom Filters.
k-mer algorithms: Compare and Swap.

Taught by

RobEdwards

Reviews

Start your review of Data Structures

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.