GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - gazolla/Kotlin-Algorithm: Algorithms and data structures in kotlin

BranchesTags
Open more actions menu

Latest commit

 

History

73 Commits
73 Commits

Folders and files

NameName
Last commit message
Last commit date
.idea
.idea
 
 
BinarySearch
BinarySearch
 
 
Combinatorics
Combinatorics
 
 
Compression
Compression
 
 
DepthFirstSearch
DepthFirstSearch
 
 
Deque
Deque
 
 
InsertionSort
InsertionSort
 
 
LinearSearch
LinearSearch
 
 
LinkedList
LinkedList
 
 
MergeSort
MergeSort
 
 
OrderedArray
OrderedArray
 
 
OrderedSet
OrderedSet
 
 
Queue
Queue
 
 
QuickSort
QuickSort
 
 
SelectionSort
SelectionSort
 
 
ShellSort
ShellSort
 
 
Shuffle
Shuffle
 
 
Stack
Stack
 
 
Tree
Tree
 
 
README.markdown
README.markdown
 
 

Repository files navigation

Welcome to Kotlin Algorithms

Here you'll find implementations of popular algorithms and data structures in Kotlin programming language.

This is a work in progress. More algorithms will be added soon. :-)

Suggestions and contributions are welcome!

The algorithms

Searching

  • Linear Search
  • Binary Search
  • [Count Occurrences]
  • [Select Minimum / Maximum]
  • [k-th Largest Element]
  • [Selection Sampling]
  • [Union-Find]
  • Depth-First Search

String Search

  • [Brute-Force String Search]
  • [Boyer-Moore]
  • Rabin-Karp
  • [Longest Common Subsequence]

Sorting

Basic sorts:

  • Insertion Sort
  • Selection Sort
  • Shell Sort

Fast sorts:

  • Quicksort
  • Merge Sort
  • [Heap Sort]

Special-purpose sorts:

  • Bucket Sort
  • Counting Sort
  • Radix Sort
  • [Topological Sort]

Compression

  • Run-Length Encoding (RLE)
  • [Huffman Coding]

Miscellaneous

  • Shuffle Randomly rearranges the contents of an array.

Machine learning

  • [k-Means Clustering]
  • k-Nearest Neighbors
  • Linear Regression
  • Logistic Regression
  • Neural Networks
  • PageRank

Data structures

Variations on arrays

  • [Array2D]
  • [Bit Set]
  • [Fixed Size Array]
  • [Ordered Array](Ordered Array/)

Queues

  • Stack
  • Queue
  • Deque
  • [Priority Queue]
  • [Bounded Priority Queue]
  • [Ring Buffer]

Lists

  • Linked List
  • Skip List

Trees

  • Tree
  • [Binary Tree]
  • [Binary Search Tree (BST)]
  • [AVL Tree]
  • Red-Black Tree
  • Splay Tree
  • Threaded Binary Tree
  • [Segment Tree]
  • kd-Tree
  • [Heap]
  • Fibonacci Heap
  • Trie
  • [B-Tree]

Hashing

  • [Hash Table]
  • Hash Functions

Sets

  • [Bloom Filter]
  • [Hash Set]
  • Multiset
  • Ordered Set

Graphs

  • [Graph]
  • [Breadth-First Search (BFS)]
  • [Depth-First Search (DFS)]
  • [Shortest Path]
  • [Minimum Spanning Tree]
  • All Paths

License

All content is licensed under the terms of the MIT open source license.

Contributors

  • Andy Bowes
  • Niccolò Passolunghi
  • Vansh Gandhi
  • Szabolcs Besenyei
  • Markus Kramer
  • Luís Soares

Contact

  • Sebastian Gazolla Jr
  • @gazollajr
  • http://gazapps.com
  • http://about.me/gazolla

About

Algorithms and data structures in kotlin

Topics

algorithmskotlinkotlin-language

Resources

Readme
Activity

Stars

504 stars

Watchers

24 watching

Forks

85 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.