Posts by Tag

python

Coding Patterns: Palindromes (DP)

9 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Staircase (DP)

9 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Bitwise XOR

7 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: 0/1 Knapsack (DP)

9 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: K-way Merge

5 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Top K Numbers

3 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Modified Binary Search

5 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Subsets

3 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Two Heaps

9 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Cyclic Sort

4 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Merge Intervals

3 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Fast & Slow Pointers

10 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Two Pointers

6 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Sliding Window

5 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Graphs

10 minute read

Graph theory is a branch of Mathematics, first introduced in 1736 when mathematician Carl Ehler introduced Leonhard Euler to the Seven Bridges of Königsberg ...

Greedy Algorithms

4 minute read

A greedy algorithm, as the name suggests, always makes the choice that seems to be the best at that moment. This means that it makes a locally-optimal choice...

Dynamic Programming

9 minute read

Dynamic programming is all about breaking down an optimization problem into simpler sub-problems, and storing the solution to each sub-problem so that each s...

Sorting Algorithms with Animations

25 minute read

Sorting refers to arranging the given data in a particular format and it is one of the most common operations in Computer Science.

Binary Search Trees

13 minute read

The Binary Search Tree (BST) is a Binary Tree with the following properties.

Hash Tables

17 minute read

A hash table is an unordered collection of key-value pairs, where each key is unique. Also, they are the most commonly used data structure for implementing a...

Search Algorithms

10 minute read

Searching for items and sorting through items are tasks that we do everyday. If a deck of cards has less than 52 cards, how do you determine which card is mi...

Heaps

5 minute read

The word heap is used in a couple of different context in Computer Science. A heap is sometimes refers to an area in the memory which is used for dynamic mem...

Binary Tree

8 minute read

Binary Tree is a classical data structure in Computer Science. It is a non-linear data structure and formally a binary tree is either empty or a root node wi...

Stacks and Queues

4 minute read

Stacks and Queues are two fundamental data structures often used in Computer Science.

Linked Lists

13 minute read

Linked Lists are among the most common data structures used in computer science.

Strings

8 minute read

Strings are one of the basic types that are built into the Python interpreter.1 You can create strings (str) by enclosing a sequence of characters within a p...

Lists

16 minute read

In Python, when people are talking about arrays, they are generally referring to lists. However, there is a fundamental difference between them which can be ...

Data Structures in Python

1 minute read

Data structures -as their name suggests- are structures which can hold some data together. They are one of the most important fundamental concepts in Compute...

Back to top ↑

algorithms

Coding Patterns: Palindromes (DP)

9 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Staircase (DP)

9 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Bitwise XOR

7 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: 0/1 Knapsack (DP)

9 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: K-way Merge

5 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Top K Numbers

3 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Modified Binary Search

5 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Subsets

3 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Two Heaps

9 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Cyclic Sort

4 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Merge Intervals

3 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Fast & Slow Pointers

10 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Two Pointers

6 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Sliding Window

5 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Greedy Algorithms

4 minute read

A greedy algorithm, as the name suggests, always makes the choice that seems to be the best at that moment. This means that it makes a locally-optimal choice...

Dynamic Programming

9 minute read

Dynamic programming is all about breaking down an optimization problem into simpler sub-problems, and storing the solution to each sub-problem so that each s...

Sorting Algorithms with Animations

25 minute read

Sorting refers to arranging the given data in a particular format and it is one of the most common operations in Computer Science.

Search Algorithms

10 minute read

Searching for items and sorting through items are tasks that we do everyday. If a deck of cards has less than 52 cards, how do you determine which card is mi...

Back to top ↑

data-structures

Graphs

10 minute read

Graph theory is a branch of Mathematics, first introduced in 1736 when mathematician Carl Ehler introduced Leonhard Euler to the Seven Bridges of Königsberg ...

Binary Search Trees

13 minute read

The Binary Search Tree (BST) is a Binary Tree with the following properties.

Hash Tables

17 minute read

A hash table is an unordered collection of key-value pairs, where each key is unique. Also, they are the most commonly used data structure for implementing a...

Heaps

5 minute read

The word heap is used in a couple of different context in Computer Science. A heap is sometimes refers to an area in the memory which is used for dynamic mem...

Binary Tree

8 minute read

Binary Tree is a classical data structure in Computer Science. It is a non-linear data structure and formally a binary tree is either empty or a root node wi...

Stacks and Queues

4 minute read

Stacks and Queues are two fundamental data structures often used in Computer Science.

Linked Lists

13 minute read

Linked Lists are among the most common data structures used in computer science.

Lists

16 minute read

In Python, when people are talking about arrays, they are generally referring to lists. However, there is a fundamental difference between them which can be ...

Data Structures in Python

1 minute read

Data structures -as their name suggests- are structures which can hold some data together. They are one of the most important fundamental concepts in Compute...

Back to top ↑

basics

Graphs

10 minute read

Graph theory is a branch of Mathematics, first introduced in 1736 when mathematician Carl Ehler introduced Leonhard Euler to the Seven Bridges of Königsberg ...

Heaps

5 minute read

The word heap is used in a couple of different context in Computer Science. A heap is sometimes refers to an area in the memory which is used for dynamic mem...

Binary Tree

8 minute read

Binary Tree is a classical data structure in Computer Science. It is a non-linear data structure and formally a binary tree is either empty or a root node wi...

Stacks and Queues

4 minute read

Stacks and Queues are two fundamental data structures often used in Computer Science.

Linked Lists

13 minute read

Linked Lists are among the most common data structures used in computer science.

Strings

8 minute read

Strings are one of the basic types that are built into the Python interpreter.1 You can create strings (str) by enclosing a sequence of characters within a p...

Lists

16 minute read

In Python, when people are talking about arrays, they are generally referring to lists. However, there is a fundamental difference between them which can be ...

Data Structures in Python

1 minute read

Data structures -as their name suggests- are structures which can hold some data together. They are one of the most important fundamental concepts in Compute...

Back to top ↑

dynamic-programming

Coding Patterns: Palindromes (DP)

9 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: Staircase (DP)

9 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Coding Patterns: 0/1 Knapsack (DP)

9 minute read

In Coding Patterns series, we will try to recognize common patterns underlying behind each algorithm question, using real examples from Leetcode.

Dynamic Programming

9 minute read

Dynamic programming is all about breaking down an optimization problem into simpler sub-problems, and storing the solution to each sub-problem so that each s...

Back to top ↑

graphs

Graphs

10 minute read

Graph theory is a branch of Mathematics, first introduced in 1736 when mathematician Carl Ehler introduced Leonhard Euler to the Seven Bridges of Königsberg ...

Back to top ↑

binary-numbers

Bit Manipulation Tricks

12 minute read

If programming is a craft, then it is best learned by imitation and lots of practice. These bit manipulation techniques are little programming tricks that ma...

Back to top ↑

bitwise-operators

Bit Manipulation Tricks

12 minute read

If programming is a craft, then it is best learned by imitation and lots of practice. These bit manipulation techniques are little programming tricks that ma...

Back to top ↑

list

Lists

16 minute read

In Python, when people are talking about arrays, they are generally referring to lists. However, there is a fundamental difference between them which can be ...

Back to top ↑

string

Strings

8 minute read

Strings are one of the basic types that are built into the Python interpreter.1 You can create strings (str) by enclosing a sequence of characters within a p...

Back to top ↑

linked-list

Linked Lists

13 minute read

Linked Lists are among the most common data structures used in computer science.

Back to top ↑

stack

Stacks and Queues

4 minute read

Stacks and Queues are two fundamental data structures often used in Computer Science.

Back to top ↑

queue

Stacks and Queues

4 minute read

Stacks and Queues are two fundamental data structures often used in Computer Science.

Back to top ↑

binary-tree

Binary Tree

8 minute read

Binary Tree is a classical data structure in Computer Science. It is a non-linear data structure and formally a binary tree is either empty or a root node wi...

Back to top ↑

heap

Heaps

5 minute read

The word heap is used in a couple of different context in Computer Science. A heap is sometimes refers to an area in the memory which is used for dynamic mem...

Back to top ↑

hash-table

Hash Tables

17 minute read

A hash table is an unordered collection of key-value pairs, where each key is unique. Also, they are the most commonly used data structure for implementing a...

Back to top ↑

hashing

Hash Tables

17 minute read

A hash table is an unordered collection of key-value pairs, where each key is unique. Also, they are the most commonly used data structure for implementing a...

Back to top ↑

dictionary

Hash Tables

17 minute read

A hash table is an unordered collection of key-value pairs, where each key is unique. Also, they are the most commonly used data structure for implementing a...

Back to top ↑

binary-search-tree

Binary Search Trees

13 minute read

The Binary Search Tree (BST) is a Binary Tree with the following properties.

Back to top ↑

sort

Sorting Algorithms with Animations

25 minute read

Sorting refers to arranging the given data in a particular format and it is one of the most common operations in Computer Science.

Back to top ↑

sorting

Sorting Algorithms with Animations

25 minute read

Sorting refers to arranging the given data in a particular format and it is one of the most common operations in Computer Science.

Back to top ↑

greedy

Greedy Algorithms

4 minute read

A greedy algorithm, as the name suggests, always makes the choice that seems to be the best at that moment. This means that it makes a locally-optimal choice...

Back to top ↑