Data Structures & Algorithms
When you finish, you can
Pick the right data structure and algorithm for a problem, implement it, and explain its speed in Big-O terms.
Start hereYou need CS-101. Implement every structure yourself before using the library version.
Updated · What changed
How this course updates itselfEvery day we scan the latest information in every field. We share with you what we think is a change as we go through regular course curriculum work, so it's the most current thing possible.
Nothing in the news has changed what this course teaches. The daily scan last checked it on ; when something does change, a dated note with sources appears here.
Debate a counselor
Take a position on Data Structures & Algorithms. The AI counselor argues the other side, asks you questions back, and cites a source for every fact it states. Sources listed under a reply are the pages it actually found; if none are listed, it is arguing from reasoning only. It is an AI and it can be wrong: check the sources.
Discuss this course
A room for people taking this course, in any language, translated for every reader. Open breakout rooms for one question at a time.
Enter the course roomCourse Syllabus
9h total- Static vs Dynamic Arrays25 min
- Singly Linked Lists25 min
- Doubly Linked Lists25 min
- Performance Analysis25 min
Practice
- Write a singly linked list with append, insert-at-front and delete.
- Time inserting 100,000 items at the front of a Python list versus your linked list.
- Add a doubly linked list and a `reverse()` method.
Check
Why is inserting at the front O(n) for an array and O(1) for a linked list?
Topics Covered
Ready to start?
Free. No account required. Progress saves in this browser — no account exists.
Start This Course