Learn Computer Science

Intmain is a portal to learn Computer Science. Read Data Structure, System Design, Machine Learning, Coding Interview Tips and lot more for free or subscribe to IntMain weekly newsletter and get all this right in your inbox.

*We at IntMain hate spam as much as you do

Microsoft Icon Intmain

Practice Popular Coding Interview Problems at IntMain

Try some of the most popular interview questions

Coin Change: Find number of ways of representing n cents

Dynamic Programming

Designing Scalable Social Network Like Instagram

System Design

Reverse a linked list in Linear Time without using an extra space

Linked List

Coin Change: Find number of ways of representing n cents

Dynamic Programming

Latest Articles

At IntMain we regurlarly publish articles on various topics such as: System Design, Data Structures and Algorithms, and latest interview questions with interview experiences and interview tips to help you excel you next coding interview.

Result in Rust Programming Language

In Rust programming language, a Result is a data type typically returned from the function for which the result of the computation is either successful or unsuccessful. The Result<T, E> can have one of...

From and Into Traits in Rust Programming Language

If you are new to Rust then From (From) and Into (into) traits might sound confusing to you, but they are interesting trait systems of Rust. In this tutorial, we will learn From...

String in Rust Programming Language

The string is the most important concept in the rust programming language. In Rust programming language the strings are handled a bit differently compared to other languages. String data type in rust can...

Difference between Copy and Clone traits in Rust

Copy trait and Clone traits are important concepts in the Rust programming language. Theoretically, they are easy but are hard to apply in real life, especially for new programmers coming from languages like...

Data Types in Rust Programming Language

In this tutorial, we will learn about data types present in the Rust programming language with examples. Every variable in Rust has a specific type associated with it, which tells what kind of...

Circuit Breaker Design Pattern – System Design

In the distributed environment it is ubiquitous for a server/system to make remote calls to many processes running on different machines over the network. And when there are calls over the network, there...