EdX

Foundations of Data Structures (edX)

Offered by IIT Bombay, IITBombayX,
Foundations of Data Structures (edX)

Learn the best way to structure and represent data. Data structures provide a means to manage large amounts of data for use in databases and internet indexing services. Efficient data structures are key for designing efficient algorithms and obtaining maintainable software design.

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

In this Computer Science course, you will start by learning basic data types, such as numbers, and gradually build a conceptual framework for organizing and managing efficient structures.
Topics covered:

  • Basic Data Types, Notion of an Abstract Data Type
  • Mathematical Properties of Sequences
  • Special Types of Sequences: Stacks, Queues, Strings
  • Implementation of Sequence Type: Arrays and Linked Lists
  • Trees
  • Sets and Maps
  • Graphs

Preliminary understanding of implementing sequence structures such as stacks, queues, and linked lists, will also be covered.
This course is part of the Fundamentals of Computer Science XSeries.

What you'll learn:

  • Various data structures
  • How to organize data efficiently
  • How to use appropriate data structures for representing, organizing, and manipulating data
  • How to create data structures using basic programming
Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

CS50's Introduction to Computer Science (edX) EdX
HarvardX,Harvard University

CS50's Introduction to Computer Science (edX)

An introduction to the intellectual enterprises of computer science and the art of programming. This is CS50, Harvard University's introduction to the intellectual enterprises of computer science and the art of programming for majors and non-majors alike, with or without prior programming experience. An entry-level course taught by David J. Malan, CS50 teaches students how to think algorithmically and solve problems efficiently.

Self Paced
Self-Paced
Computing in Python IV: Objects & Algorithms (edX) EdX
Georgia Institute of Technology,GTx

Computing in Python IV: Objects & Algorithms (edX)

Learn about recursion, search and sort algorithms, and object-oriented programming in Python. Complete your introductory knowledge of computer science with this final course on objects and algorithms. Now that you've learned about complex control structures and data structures, learn to develop programs that more intuitively leverage your natural understanding of problems through object-oriented programming. Then, learn to analyze the complexity and efficiency of these programs through algorithms. In addition, certify your broader knowledge of Introduction to Computing with a comprehensive exam.

Self Paced
Self-Paced
Python for Data Science (edX) EdX
University of California, San Diego,UC San DiegoX

Python for Data Science (edX)

Learn to use powerful, open-source, Python tools, including Pandas, Git and Matplotlib, to manipulate, analyze, and visualize complex datasets. In the information age, data is all around us. Within this data are answers to compelling questions across many societal domains (politics, business, science, etc.). But if you had access to a large dataset, would you be able to find the answers you seek?

Self Paced
Self-Paced
HTML5 Apps and Games (edX) EdX
World Wide Web Consortium - W3C,W3Cx

HTML5 Apps and Games (edX)

Today, developers are increasingly moving from native to HTML5-based apps. Increase your ability to design and deliver innovative services on the Web! Want to learn advanced HTML5 tips and techniques? This is the course for you! Find out more about the powerful Web features that will help you create great content and apps.

Self Paced
Self-Paced
Introduction to Java Programming: Fundamental Data Structures and Algorithms (edX) EdX
Universidad Carlos III de Madrid - UC3M,UC3Mx

Introduction to Java Programming: Fundamental Data Structures and Algorithms (edX)

Learn to enhance your code by using fundamental data structures and powerful algorithms in Java. In this introductory course, you will learn programming with Java in an easy and interactive way. You will learn about fundamental data structures, such as lists, stacks, queues and trees, and presents algorithms for inserting, deleting, searching and sorting information on these data structures in an efficient way.

Self Paced
Self-Paced
Algorithms and Data Structures Capstone (edX) EdX
University of California, San Diego,UC San DiegoX

Algorithms and Data Structures Capstone (edX)

Synthesize your knowledge of algorithms and biology to build your own software for solving a biological challenge. Building a fully-fledged algorithm to assemble genomes from DNA fragments on a real dataset is an enormous challenge with major demand in the multi-billion dollar biotech industry. In this capstone project, we will take the training wheels off and let you design your own optimized software program for genome sequencing.

Self Paced
Self-Paced
Introducción a la programación en C: Funciones y punteros (edX) EdX
Universidad Autonoma de Madrid

Introducción a la programación en C: Funciones y punteros (edX)

En este curso aprenderás cómo hacer programas modulares a través de funciones y punteros en el lenguaje de programación C, uno de los más utilizados. Este curso en línea te permitirá aprender más conceptos para ampliar tus habilidades de programación en el lenguaje C. Ahora resolveremos los problemas de forma modular, dividiendo el código en pequeñas partes definidas como funciones.

Self Paced
Self-Paced
Data Structures and Algorithm Design Part I | 数据结构与算法设计(上) (edX) EdX
Tsinghua University,TsinghuaX

Data Structures and Algorithm Design Part I | 数据结构与算法设计(上) (edX)

Learn the basics of data structures and methods to design algorithms and analyze their performance. 本课程旨在围绕各类数据结构的设计与实现,揭示其中的规律原理与方法技巧;同时针对算法设计及其性能分析,使学生了解并掌握主要的套路与手段。

Self Paced
Self-Paced
Introduction to Java Programming: Starting to code in Java (edX) EdX
Universidad Carlos III de Madrid - UC3M,UC3Mx

Introduction to Java Programming: Starting to code in Java (edX)

Learn to program with Java in an easy and interactive way! In this introductory Java programming course, you will be introduced to powerful concepts such as functional abstraction, the object oriented programming (OOP) paradigm and Application Programming Interfaces (APIs). Examples and case studies will be provided so that you can implement simple programs on your own or collaborate with peers.

Self Paced
Self-Paced
MATLAB et Octave pour débutants (edX) EdX
École Polytechnique Fédérale de Lausanne,EPFLx

MATLAB et Octave pour débutants (edX)

Premiers pas dans MATLAB et Octave avec un regard vers le calcul scientifique. Commencer à utiliser un logiciel est toujours délicat, on ne sait jamais par où commencer. Dans ce cours nous allons nous concentrer sur la maîtrise d’Octave et MATLAB, de façon à pouvoir par la suite continuer à apprendre de manière indépendante.

Self Paced
Self-Paced
IoT System Design: Software and Hardware Integration (edX) EdX
Waseda University,WasedaX

IoT System Design: Software and Hardware Integration (edX)

Start developing your own Internet of Things (IoT) system with this exploration of the interaction between software and hardware. This course is designed to teach you how systems are developed using IoT technology. Many engineers and developers tend to focus on a single discipline - either software or hardware. However, in today’s connected age it's critical to have a comprehensive understanding of both disciplines and how they are intertwined.

Self Paced
Self-Paced
Programming for Data Science (edX) EdX
University of Adelaide,AdelaideX

Programming for Data Science (edX)

Learn how to apply fundamental programming concepts, computational thinking and data analysis techniques to solve real-world data science problems. There is a rising demand for people with the skills to work with Big Data sets and this course can start you on your journey through our Big Data MicroMasters program towards a recognised credential in this highly competitive area. Using practical activities you will learn how digital technologies work and will develop your coding skills through engaging and collaborative assignments.

Self Paced
Self-Paced