#### Welcome to **algonomics**.

The blog is dedicated to the most commonly used algorithms in the day to day life of a developer. Most of the time we do not use these algorithms directly as there are tons of libraries and utilities available that already implement these algorithms. But ask any seasoned developer, most of the development time is spent in debugging existing code written by others in case of any issues (or in case you need to update the same).

Also, understanding algorithms and data structures is very important in case you are interested in competitive programming. Most of the problems mentioned on coding competition websites expect you to have a basic understanding of algorithms and data structures and their implementation in the programming language of your choice.

## FAQs

- Calculating the complexity of an algorithm.
- Best case, Worst Case and average case analysis.
- What to consider while selecting an algorithm for a specific use-case ?
- Recursion or Iteration ?
- Recomended Readings.

- May, 2019
- Bitwise Operations - a quick overview of commonly used bitwise operations
- Mathematical Progressions - a quick overview on different types of mathematical progressions
- Apr, 2019
- Quick Sort - Another divide and conquer based algorithm that sorts the elements around a pivot element recursively.
- Merge Sort - A divide and conquer based sorting algorithm that works by dividing the input in two halves in each iteration and then evantually merging those in sorted order.
- Insertion Sort - InsertionSort algorithm that sorts the given input dataset, one element at a time.