Data Structures

Apply basic algorithmic techniques such as greedy algorithms, binary search, sorting and dynamic programming to solve programming challenges. Apply various data structures such as stack, queue, hash table, priority queue, binary search tree, graph and string to solve programming challenges. Apply graph and string algorithms to solve real-world challenges: finding shortest paths on huge maps and assembling genomes from millions of pieces. Solve complex programming challenges using advanced techniques: maximum flow, linear programming, approximate algorithms, SAT-solvers, streaming.

Career Relevance by Data Role

The techniques and tools covered in Data Structures are most similar to the requirements found in Data Scientist job advertisements.

Similarity Scores (Out of 100)

Fast Facts

Github Java C++ Python

Algorithms Data Analysis Data Sets Data Visualization Decision Trees Image Analysis Programming Optimization Cluster Analysis Big Data Data Processing Segmentation Analysis

Similar Opportunities
Computing in Python IV: Objects & Algorithms

EdX - Georgia Institute of Technology

Algorithms, Part II

Coursera - Princeton University

Advanced Algorithms and Complexity

Coursera - National Research University Higher School of Economics

Algorithmic Design and Techniques

EdX - University of California, San Diego

Algorithmic Toolbox

Coursera - National Research University Higher School of Economics

Programming Fundamentals

Coursera - Duke University

Approximation Algorithms Part I

Coursera - École normale supérieure

Computational Thinking for Problem Solving

Coursera - University of Pennsylvania