# Ricardo Borges

Personal blog

## 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

## 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.