Resource Library
Below you can find all of the different resources in the Guide: practice problems, former Google interview questions, online courses, videos, and more.
List of online CS courses and resources
Looking for more resources to improve your CS skills? This GitHub page list links to online courses and other resources you can use to learn a variety of programming languages. (GitHub)
ESTIMATED TIME: 20-30 MINSReddit's Learn Programming Community
Check out the learnprogramming community on Reddit where you can find read posts by other folks new to programming or create post of your own.
How to write if statements (C++)
Want to create decision-making programs in C++? Learn how you can take advantage of the if statement to do just that! (Programiz)
ESTIMATED TIME: 20-30 MINSHow to write if statements (Java)
Want to create decision-making programs in Java? Learn how you can take advantage of the if statement to do just that! (Programiz)
ESTIMATED TIME: 20-30 MINSHow to write loops (C++)
In programming, loops are used to repeat an action on a block of code. Brush up on the basics of for loops in C++ with this article, which includes example problems and solutions. (Programiz)
ESTIMATED TIME: 20-30 MINSHow to write functions (C++)
Interested in learning the basics of functions in C++? Check out this tutorial to learn more about the C++ function and function expressions with the help of examples. (Programiz)
ESTIMATED TIME: 20-30 MINSHow to write functions (Python)
Functions are great because they help break down larger programs into smaller chunks! Learn more about how to define your own functions in the Python with this tutorial! (Programiz)
ESTIMATED TIME: 20-30 MINSHow to write functions (Java)
Methods are commonly used in the Java language to define the behavior of a class. Check out this tutorial to learn all about functions, including how to declare and use them. (Programiz)
ESTIMATED TIME: 20-30 MINSHow to use arrays (C++)
In C++, an array is a variable that can store multiple values of the same type. Learn more about arrays in this tutorial and how you can use them to declare, initialize, and access elements. (Programiz)
ESTIMATED TIME: 20-30 MINSTypes of trees
Trees are an important data structure in computer science, so it makes sense that many types of trees exist! Learn about the different types of tree data structures you may encounter in programming. (The Crazy Programmer)
ESTIMATED TIME: 10-20 MINSEverything you need to know about trees
We know that trees have roots, branches, and leaves. In computer science, they also have nodes, edges, and ancestors. Learn more about the vocabulary of trees and how to implement them in. (freeCodeCamp)
ESTIMATED TIME: 20-30 MINSThe trie data structure
Much like a dictionary, a trie stores keys and associated values. Check out this article to learn more about what a trie is and why it's a useful data structure to use when it comes to search. (GitHub)
ESTIMATED TIME: 10-20 MINS