Data Structures Fundamentals

Daniel Kane, Alexander S. Kulikov, Michael Levin, Neil Rhodes, UCSanDiegoX

Learn about data structures that are used in computational thinking – both basic and advanced.

A good algorithm usually comes together with a set of good data structures that allow the algorithm to manipulate the data efficiently. In this course, part of the Algorithms and Data Structures MicroMasters program, we consider the common data structures that are used in various computational problems. You will learn how these data structures are implemented in different programming languages and will practice implementing them in our programming assignments. This will help you to understand what is going on inside a particular built-in implementation of a data structure and what to expect from it. You will also learn typical use cases for these data structures.

A few examples of questions that we are going to cover in this course are:

  1. What is a good strategy of resizing a dynamic array?
  2. How priority queues are implemented in C++, Java, and Python?
  3. How to implement a hash table so that the amortized running time of all operations is O(1) on average?
  4. What are good strategies to keep a binary tree balanced?

We look forward to seeing you in this course! We know it will make you a better programmer.

What will you learn

  • Basics of data structures including their fundamental building blocks: arrays and linked lists
  • How to use Dynamic arrays
  • A very powerful and widely used technique called hashing and its applications
  • How to use priority queues to efficiently schedule jobs, in the context of a computer operating system or real life
  • Basic structure of binary search trees - AVL trees and Splay trees
  • Applications of data structures

Dates:
  • 15 April 2019
Course properties:
  • Free:
  • Paid:
  • Certificate:
  • MOOC:
  • Video:
  • Audio:
  • Email-course:
  • Language: English Gb

Reviews

No reviews yet. Want to be the first?

Register to leave a review

More on this topic:
9b458aa7-198c-456a-9223-402ea859881d-56dc9fcd0439.small Introduction to C#
Learn the basics of the C# programming language, one of the most popular programming...
F89c9ea8-b0ad-4c0c-8347-1b61dbd25125-8955d8b94b4f.small Introduction to Python for Data Science
The ability to analyze data with Python is critical in data science. Learn the...
042fe5b1-e084-4a0a-a375-0e24659894b3-e6aa7dcc7420.small Introduction to R for Data Science
Learn the R statistical programming language, the lingua franca of data science...
D9afd89c-8bd5-47dc-a242-19923b04f2f8-9df0cdd7899b.small Introduction to Python: Fundamentals
Build on what you learned in the “Introduction to Python: Absolute Beginner...
3ee241cd-3d30-44c4-8693-245e00b91edd-dfdc7148440f.small Algorithms and Data Structures
Learn how to write faster and more efficient code against the backdrop of famous...
More from 'Computer Science':
8f9c73ef-73f5-45dd-aca1-7dad3696f743-552e331333d3.small Circuits and Electronics 1: Basic Circuit Analysis
Learn techniques that are foundational to the design of microchips used in smartphones...
F6623bd8-ea35-42b2-880c-77a2f9c744b0-21f7f7cdcc0d.small Circuits and Electronics 2: Amplification, Speed, and Delay
Learn how to speed up digital circuits and build amplifiers in the design of...
Aca3d8f7-8907-474c-9a62-58cca8c6254f-86b161d3f48d.small Circuits and Electronics 3: Applications
Learn about cool applications, op-amps and filters in the design of microchips...
Regular_9194da90-0f33-4869-9b78-7276f428c705 The Digital Economy: Finance for Business Growth
Learn how to develop a funding strategy for your business; explore different...
Regular_1238dc35-eb95-4542-8538-cc53f48a541e The Digital Economy: Selling Through Customer Insight
Uncover new perspectives on the role and behaviour of your customers, to enhance...
More from 'edX':
722b00f5-460d-4629-8773-7b4991662b0c-c051cc02572c.small Introduction to Philosophy: God, Knowledge and Consciousness
Learn how to ask and answer big questions. Pursue a verified certificate to...
Addc788a-fa12-439b-877e-ac508365bfdf-80fd9f38fee0.small Biobased Products for a Sustainable (Bio)economy
Discover how fossil fuels are being replaced by renewable resources to create...
8f9c73ef-73f5-45dd-aca1-7dad3696f743-552e331333d3.small Circuits and Electronics 1: Basic Circuit Analysis
Learn techniques that are foundational to the design of microchips used in smartphones...
F6623bd8-ea35-42b2-880c-77a2f9c744b0-21f7f7cdcc0d.small Circuits and Electronics 2: Amplification, Speed, and Delay
Learn how to speed up digital circuits and build amplifiers in the design of...
Aca3d8f7-8907-474c-9a62-58cca8c6254f-86b161d3f48d.small Circuits and Electronics 3: Applications
Learn about cool applications, op-amps and filters in the design of microchips...

© 2013-2019