EdX

Introduction to Data Structures (edX)

Offered by New York University,
Introduction to Data Structures (edX)

Learn the advanced programming topics in the C++ programming language, including pointers, dynamic storage, recursion, searching, and sorting. This is the 3rd course in the intermediate, undergraduate-level offering that makes up the larger Programming and Data Structures MicroBachelors program.

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

We recommend taking them in order, unless you have a background in these areas already and feel comfortable skipping ahead.

These topics build upon the learnings that are taught in the introductory-level Computer Science Fundamentals MicroBachelors program, offered by the same instructor.
This is a self-paced course that continues in the development of C++ programming skills. Among the topics covered is the development of more advanced command-line programs that utilize Pointers, Dynamic Storage, Recursion, Searching, Sorting to solve problems. Students learn how to use and program these data structures through the lectures and the labs. C++ programming material is presented over eight weeks of interactive lectures with quizzes to assess your understanding of the material Students will experience hands-on practice writing C++ programs through fourteen lab challenges.
Students will not only learn to use data structures to organize, manage, and storage in formats that enable efficient access and modification. A data structure is a collection of data values, the relationships among them, and the functions or operations that can be applied to the data.
This course is part of the Programming & Data Structures MicroBachelors Program.

What you'll learn

  • Demonstrate a basic understanding of object-oriented programming by using structures and classes in software projects.
  • Use object-oriented programming techniques to develop executable programs that include elements such as inheritance and polymorphism.
  • Apply basic searching and sorting algorithms in software design.
  • Apply single-and multi-dimensional arrays in software.
  • Demonstrate a basic understanding of programming methodologies, including object oriented, structured, and procedural programming.
  • Design and develop programs that recursion to solve problems that can be expressed with recurrence.

Syllabus

Wk 1 - Pointers

  • Dynamic Arrays
  • Pointer Arithmetic

Wk 2 - Pointers Labs

Wk 3 - Recursions

  • Mathematical Induction
  • Recursion

Wk 4 - Recursion Labs

Week 5 - Searching

  • Sorted-Search
  • Linear vs. Logarithmic

Wk 6 - Searching Labs

Wk 7 - Sorting

  • Sorting Algorithms
  • Runtime Analysis

Wk 8 - Sorting Labs

Week 9 - Object Oriented Programming

  • Encapsulation
  • Accessors and Mutators
  • Constructors
  • Operator Overloading
  • Inheritance
  • Polymorphism

Wk 10 - OO Labs

Wk 11 - Final Exam

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Introduction to Java Programming - Part 2 (edX) EdX
The Hong Kong University of Science and Technology - HKUST,HKUSTx

Introduction to Java Programming - Part 2 (edX)

The first MOOC to teach the fundamental elements of Java programming and data abstraction. Do you want to become a better problem solver? This Java course will provide you with a strong understanding of basic Java programming elements and data abstraction using problem representation and the object-oriented framework.

Self Paced
Self-Paced
Machine Learning with Python: from Linear Models to Deep Learning (edX) EdX
MIT,MITx

Machine Learning with Python: from Linear Models to Deep Learning (edX)

An in-depth introduction to the field of machine learning, from linear models to deep learning and reinforcement learning, through hands-on Python projects. Machine learning methods are commonly used across engineering and sciences, from computer systems to physics. Moreover, commercial sites such as search engines, recommender systems (e.g., Netflix, Amazon), advertisers, and financial institutions employ machine learning algorithms for content recommendation, predicting customer behavior, compliance, or risk.

May 27th 2024
13-24 Weeks
Introduction to Computer Science and Programming Using Python (edX) EdX
MIT,MITx

Introduction to Computer Science and Programming Using Python (edX)

An introduction to computer science as a tool to solve real-world analytical problems using Python 3.5. This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems.

Jan 24th 2024
5-12 Weeks
Programming in Scratch (edX) EdX
Harvey Mudd College,HarveyMuddX

Programming in Scratch (edX)

See how easy learning computer science can be. Use Scratch to create games, animations, stories and more. Want to learn computer programming, but unsure where to begin? This is the course for you! Scratch is the computer programming language that makes it easy and fun to create interactive stories, games and animations and share them online.

No sessions available
5-12 Weeks
Introduction to C++ (edX) EdX
Microsoft

Introduction to C++ (edX)

Get a brief introduction to the C++ language from the experts at Microsoft. C++ is a general purpose programming language that supports various computer programming models such as object-oriented programming and generic programming. It was created by Bjarne Stroustrup and, “Its main purpose was to make writing good programs easier and more pleasant for the individual programmer.”*

No sessions available
4 Weeks
Introduction to Apache Spark (edX) EdX
University of California, Berkeley

Introduction to Apache Spark (edX)

Learn the fundamentals and architecture of Apache Spark, the leading cluster-computing framework among professionals. Spark is rapidly becoming the compute engine of choice for big data. Spark programs are more concise and often run 10-100 times faster than Hadoop MapReduce jobs. As companies realize this, Spark developers are becoming increasingly valued.

Not Available
Course Not Available
HTML5 Coding Essentials and Best Practices (edX) EdX
World Wide Web Consortium - W3C,W3Cx

HTML5 Coding Essentials and Best Practices (edX)

Learn how to write Web pages and Web sites by mastering HTML5 coding techniques and best practices. HTML5 is the standard language of the Web, developed by W3C. For application developers and industry, HTML5 represents a set of features that people will be able to rely on for years to come. HTML5 is supported on a wide variety of devices, lowering the cost of creating rich applications to reach users everywhere.

Self Paced
Self-Paced