YoVDO

Programming & Data Structures

Offered By: New York University (NYU) via edX

Tags

Algorithms and Data Structures Courses Computer Science Courses Programming Courses Information Technology Courses Binary Tree Courses Data Structures Courses Sorting Algorithms Courses Graph Algorithms Courses Computational Complexity Courses

Course Description

Overview

This program will teach you core computer science competencies in programming and data structures. Understanding how programming works is essential in many technical disciplines such Information Technology, Software Engineering, Cybersecurity, and Computer Science. The courses utilize the C++ programming languages to establish a solid foundation in programming and data structures for the students. Students gain valuable hands-on experience programming solutions to problems in the labs. I the labs, students will practice their core programming skills and will also develop many advanced data structures including, hashtables, sorting and search algorithms, binary trees, AVL trees, graph algorithms and many more advanced computing topics. In addition to the applied programming labs, students will also gain an understanding of computational complexity through the analysis of the data structures and programs that are developed.


Syllabus

Courses under this program:
Course 1: Introduction to Programming in C++

Learn the fundamentals of programming in the C++ programming language, including iteration, decision branching, data types and expression.



Course 2: Advanced Programming in C++

Learn the advanced programming topics in the C++ programming language, including functions, computation complexity, arrays and strings.



Course 3: Introduction to Data Structures

Learn the advanced programming topics in the C++ programming language, including pointers, dynamic storage, recursion, searching, and sorting.



Course 4: Advanced Data Structures

Learn the advanced programming topics in the C++ programming language, including file processing, linked lists, stacks, queues, trees, binary search trees and tree balancing algorithms.




Courses

  • 2 reviews

    8 weeks, 6-8 hours a week, 6-8 hours a week

    View details

    This course will soon be retired. Last day to enroll is 12/31/2022 at 00:00 UTC.

    This is the 1st course in the intermediate, undergraduate-level offering that makes up the larger Programming and Data Structures MicroBachelors program. We recommend taking them in order, unless you have a background in these areas already and feel comfortable skipping ahead.

    1. Introduction to Programming in C++
    2. Advanced Programming in C++
    3. Introduction to Data Structures
    4. Advanced Data Structures

    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 provides an introduction to the C++ programming language. Among the topics covered is the development of command-line programs that utilize different data types, expressions, decision branching, and iteration to solve problems. Students learn to program in C++ through the lectures and the labs. C++ programming material is presented over eight weeks of interactive lectures with weekly quizzes to assess your understanding of the material Students will experience hands-on practice writing C++ programs through ten lab challenges.

    Students will experience the development cycle by compiling their C++ programs from human-readable source code to machine-readable object code. They will then link their objects to create an executable that can be run interactively.

  • 0 reviews

    8 weeks, 7-9 hours a week, 7-9 hours a week

    View details

    This course will soon be retired. Last day to enroll is 12/31/2022 at 00:00 UTC.

    This is the 2nd course in the intermediate undergraduate-level offering in the larger Programming and Data Structures MicroBachelors program. We recommend taking them in order, unless you have a background in these areas already and feel comfortable skipping ahead.

    1. Introduction to Programming in C++
    2. Advanced Programming in C++
    3. Introduction to Data Structures
    4. Advanced Data Structures

    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 functions, arrays, and strings to solve problems. Students learn to program in C++ through the lectures and the labs. C++ programming material is presented over eight weeks of interactive lectures with bi-weekly quizzes to assess your understanding of the material Students will experience hands-on practice writing C++ programs through twelve lab challenges.

    Students will not only learn to use these more advanced procedural programming functionalities. They will also learn to analyze the computational complexity of their code. Computational complexity theory focuses on classifying computational problems according to their inherent difficulty and relating these classes to each other. A computational problem is a task solved by a computer. A computation problem is solvable by the mechanical application of mathematical steps, such as an algorithm.

    A problem is regarded as inherently difficult if its solution requires significant resources, whatever the algorithm used. The theory formalizes this intuition by introducing mathematical models of computation to study these problems and quantifying their computational complexity, i.e., the number of resources needed to solve them, such as time and storage.

  • 0 reviews

    11 weeks, 5-7 hours a week, 5-7 hours a week

    View details

    This course will soon be retired. Last day to enroll is 12/31/2022 at 00:00 UTC.

    This is the 3rd course in the intermediate, undergraduate-level offering that makes up the larger Programming and Data Structures MicroBachelors program. We recommend taking them in order, unless you have a background in these areas already and feel comfortable skipping ahead.

    1. Introduction to Programming in C++
    2. Advanced Programming in C++
    3. Introduction to Data Structures
    4. Advanced Data Structures

    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.


Taught by

Aspen Olmsted and Itay Tal

Tags

Related Courses

Conception et mise en œuvre d'algorithmes.
École Polytechnique via Coursera
Algorithmic Thinking (Part 2)
Rice University via Coursera
Алгоритмы, часть I
Princeton University via Coursera
Algorithms for Searching, Sorting, and Indexing
University of Colorado Boulder via Coursera
Algorithms, Part I
Princeton University via Coursera