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

Show?id=n3eliycplgk&bids=695438
NVIDIA
More on this topic:
A76b4bf6-0720-4ffd-9858-cf71e6966ee7-0738df3e45de.small Introduction to Java Programming: Fundamental Data Structures and Algorithms
Learn to enhance your code by using fundamental data structures and powerful...
Download?download_frd=1&verifier=4c7cq9ud7iey9ctinuggoaklbsviq1psvgm3ugim Fundamentals of Structured Writing for Technical Documentation
The field of technical writing has come a long way from writing clearly and...
Small-icon.hover Algorithms: Design and Analysis, Part 1
In this course you will learn several fundamental principles of algorithm design...
Small-icon.hover Algorithms: Design and Analysis, Part 2
In this course you will learn several fundamental principles of advanced algorithm...
Small-icon.hover Algorithms, Part I
This course covers the essential information that every serious programmer needs...
More from 'Mathematics, Statistics and Data Analysis':
D8d3c316-0e41-4083-93ff-733a7e9b16bb-46a802220de9.small Capstone Exam in Statistics and Data Science
Solidify and demonstrate your knowledge and abilities in probability, data analysis...
8bdd5da6-35c5-43da-920e-0140ec37d4aa-6f908f92bda2.small AGRIMONITOR: Agricultural Policy in the Caribbean
Learn the effects of agricultural policy in the Caribbean and Latin America...
Logo2 Network Science
The course is an interdisciplinary course, focused on the emerging science of...
0673236f-aaf9-4e38-ba92-c990f4f7b4cb-f07786bf5142.small Introduction to Linear Models and Matrix Algebra
Learn to use R programming to apply linear models to analyze data in life sciences...
Cb555d73-5183-446c-8555-69a7ffd19206-9672fd296e4a.small High-Dimensional Data Analysis
A focus on several techniques that are widely used in the analysis of high-dimensional...
More from 'edX':
D8d3c316-0e41-4083-93ff-733a7e9b16bb-46a802220de9.small Capstone Exam in Statistics and Data Science
Solidify and demonstrate your knowledge and abilities in probability, data analysis...
949a4020-22e5-4762-9e15-8be6be00aedf-412a05da2ef9.small What Works in Education: Evidence-Based Education Policies
Learn what works in education and how to identify, analyze and implement evidence...
83c62468-3458-40cc-ac21-9eb3909ec204-be2d4e9c8ea9.small Risk Management in Development Projects
Learn to preemptively manage positive and negative events that may affect the...
75c23566-6acf-4db4-85d2-ac8f29f20377-c49ecd049460.small Global History Lab
Learn the span of world history from 1300 to the present. In this global history...
7bdf79de-56a9-4a5d-ae06-67c82a34a470-3dbd2386f2fb.small Leading Change: Go Beyond Gamification with Gameful Learning
Learn the tools to support gameful learning environments that foster personalized...

© 2013-2019