# Ricardo Borges

Personal blog

## OOP Concepts in practice using TypeScript

The idea of this post is to modify a very small part of imaginary software by applying OOP concepts.

## Data Structures in TypeScript - Hash Table

A Hash table is a data structure with a highly efficient lookup, which store key values pairs

## Starting with search algorithms

Search algorithms that are used to retrieve information from a data structure, in this post I'll describe 3 search algorithms to find an element in lists

## Quick Sort

Quick Sort is an in-place sorting algorithm that uses a divide-and-conquer technique to sort a given list

## Merge Sort

Merge sort is a sorting algorithm that uses a divide-and-conquer technique to sort a given list

## Starting with sorting algorithms

In this post, I'll describe three sorting algorithms that, although not the most efficient, are easy to understand.

## How to check if a Binary Tree is a BST

Checking if a Binary Tree is a BST step by step

## Data Structures in Typescript - Binary Search Tree

Binary Search Trees are useful when you need to insert, delete and search comparable elements.

## How to reverse a Singly Linked List

There are some ways to reverse a Singly Linked List, the one that I want to show here doesn't require extra space.

## Topological sort

Topological sort is an ordering of the vertices of a directed acyclic graph, in a way that if there is an edge from a vertex A to B, then A comes before B.

## Data Structures in TypeScript - Graph

Graphs can be used to represent networks, websites structure, path optimization algorithms, there are also applications in other fields.

## Data Structures in TypeScript - Queue

Queues can be used whenever is necessary to process things in a first-in-first-out order, also helps in algorithms of other data structures.

## Data Structures in TypeScript - Stack

You can use stacks for expressions evaluations and conversion, backtracking, and memory management.

## Data Structures in TypeScript - Linked List

Linked Lists have some advantages over arrays and can be used to implement other data structures, such as stacks, queues, and graphs.

## Data Structures in TypeScript - Array

An array is a common data structure that holds items of the same type, in TypeScript, unlike other languages, an array doesn't have a fixed length.