Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ultirequiem/algos

💼 Each Friday a new Algorithm (Code + Explanation)
https://github.com/ultirequiem/algos

algorithms data-structures typescript

Last synced: 2 months ago
JSON representation

💼 Each Friday a new Algorithm (Code + Explanation)

Awesome Lists containing this project

README

        

# Algorithms

## sorting

linear search < jump search < binary search

## extra

Algorithm is a step-by-step procedure, which defines a set of instructions to be
executed in a certain order to get the desired output.

Algorithms are generally created independent of underlying languages, i.e. an
algorithm can be implemented in more than one programming language.

From the data structure point of view, following are some important categories
of algorithms:

- Search − Algorithm to search an item in a data structure.

- Sort − Algorithm to sort items in a certain order.

- Insert − Algorithm to insert item in a data structure.

- Update − Algorithm to update an existing item in a data structure.

- Delete − Algorithm to delete an existing item from a data structure.

### Characteristics of an Algorithm

Not all procedures can be called an algorithm. An algorithm should have the
following characteristics:

- Unambiguous: Algorithm should be clear and unambiguous. Each of its steps (or
phases), and their inputs/outputs should be clear and must lead to only one
meaning.

- Input: An algorithm should have 0 or more well-defined inputs.

- Output: An algorithm should have 1 or more well-defined outputs, and should
match the desired output.

- Finiteness: Algorithms must terminate after a finite number of steps.

- Feasibility: Should be feasible with the available resources.

- Independent: An algorithm should have step-by-step directions, which should be
independent of any programming code.