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

https://github.com/anverbogatov/java-algorithms

This repository contains implementation of widely known and commonly used algorithms written using Java programming language.
https://github.com/anverbogatov/java-algorithms

algorithms java java-18 java-algorithms java-tutorials

Last synced: 3 months ago
JSON representation

This repository contains implementation of widely known and commonly used algorithms written using Java programming language.

Awesome Lists containing this project

README

        

![project build status](https://github.com/anverbogatov/java-algorithms/actions/workflows/maven.yml/badge.svg)

# java-algorithms

## 🦅 Overview
This repository contains implementation of widely known and commonly used algorithms written using Java programming language.

## 📒 Algorithms

### 🔎 Search
| Name | Variation| Complexity | Link |
|------|----------|------------|------|
| Binary Search | loop-based | O(log n) | [Show](https://github.com/anverbogatov/java-algorithms/blob/3cdac6ad6f99c53ec0e109dacce00eecb51fc66f/src/main/java/com/anverbogatov/algorithms/search/BinarySearch.java#L19) |
| Linear Search | loop-based | O(n) | [Show](https://github.com/anverbogatov/java-algorithms/blob/96c7bb928b065db346888ac8096cebf6b9067844/src/main/java/com/anverbogatov/algorithms/search/LinearSearch.java#L18) |

### 📚 Sorting
| Name | Variation| Complexity | Link |
|------|----------|------------|------|
| Selection Sort | loop-based | O(n^2) | [Show](https://github.com/anverbogatov/java-algorithms/blob/c6cd455f493a1d85b63994d59b68d0e824cc903b/src/main/java/com/anverbogatov/algorithms/sorting/SelectionSort.java#L11) |
| Bubble Sort | loop-based | O(n^2) | [Show](https://github.com/anverbogatov/java-algorithms/blob/ce01819093c429f28a9822f38b7c2a41d8bfea64/src/main/java/com/anverbogatov/algorithms/sorting/BubbleSort.java#L11) |
| Quick Sort | recursion-based | O(n * log n) | [Show](https://github.com/anverbogatov/java-algorithms/blob/2d7858dca2edb4692698c60e79f72690591784fb/src/main/java/com/anverbogatov/algorithms/sorting/QuickSort.java#L10) |

### 🧮 Calculations
| Name | Variation| Complexity | Link |
|------|----------|------------|------|
| Fibonacci numbers | recursion-based | O(2^n) | [Show](https://github.com/anverbogatov/java-algorithms/blob/04a46c302c9c49bfdeb4572c5623651ae88059a8/src/main/java/com/anverbogatov/algorithms/calculations/FibonacciNumbers.java#L13) |

## 📚 Coding Problems
[List of coding problems with their solution](https://github.com/anverbogatov/java-algorithms/tree/main/src/main/java/com/anverbogatov/algorithms/tasks)