Java: Linear Data Structures and Trees
Offered By: Codio via Coursera
Course Description
Overview
Code and run your first Java program about data structures and algorithms in minutes without installing anything!
This course is designed for learners familiar with Java basics and object-oriented programming. It provides a solid foundation of not just Java, but core data structures and algorithms topics that can be transferred to other languages. The modules in this course cover linear data structures like lists (singly linked, doubly linked, circular), stacks, queues, and introduces the first non-linear data structure trees.
To allow for a truly hands-on, self-paced learning experience, this course is video-free. Assignments contain short explanations with images and runnable code examples with suggested edits to explore code examples further, building a deeper understanding by doing. You'll benefit from instant feedback from a variety of assessment items along the way, gently progressing from quick understanding checks (multiple choice, fill in the blank, and un-scrambling code blocks) to small, approachable coding exercises that take minutes instead of hours.
Syllabus
- List ADT
- Welcome to Week 1 of the Linear Data Structures and Trees course. You will learn about abstract data types (ADT), the list ADT, the many variations of the list (singly, doubly, circular linked lists), as well as iterators.
- Stacks and Queues ADT
- Welcome to Week 2 of the Linear Data Structures and Trees course. This module builds upon the list ADT and introduces other commonly used linear data structures like stacks, queues, priority queues, and deques (double-ended queues).
- Tree ADT
- Welcome to Week 3 of the Linear Data Structures and Trees course. This module introduces the first non-linear data structure, trees. Topics include the tree ADT, binary trees, binary search trees, tree traversal, and different searching algorithms for trees.
- Self-Balancing Trees
- Welcome to Week 4 of the Linear Data Structures and Trees course. This module builds upon the tree ADT and introduces data structures that reconfigure themselves to maintain balance and good performance. Topics include AVL trees, Red-Black trees, and B-trees.
Taught by
Patrick Ester and Kevin Noelsaint
Related Courses
Conception et mise en œuvre d'algorithmes.École Polytechnique via Coursera Algorithmen und Datenstrukturen
Universität Osnabrück via iversity 数据结构与算法 Data Structures and Algorithms
Peking University via Coursera Data Structures and Algorithm Design Part I | 数据结构与算法设计(上)
Tsinghua University via edX 数据结构基础
Peking University via Coursera