Sunday, October 1, 2023
HomeAlgorithmsSelection Sort Kotlin with Example - Sorting Algorithms #1

Selection Sort Kotlin with Example – Sorting Algorithms #1


Selection Sort is one of the most important sorting algorithm frequently looked upon and is even asked in the Interviews. In this article we will look at Selection Sort Kotlin Implementation with example.

Before diving into the code, let us see what is a Selection sort and Whether its efficient to use or not.

What is a Selection Sort

Selection sort is one of the simplest form of sorting. Its goal is simple: to find the smallest element and bring it to front. Then find the second smallest and move it to second position from front and so on.This will continue until all the elements are in position.

Since the algorithm repeatedly selects the smallest element, it is called as selection sort.

Related Links


  • Easy,
  • No additional space required

Selection Sort Kotlin Algorithm Implementation:

fun main(args: Array<String>) {
val list = ArrayList(readLine()!!.split(" ").map { it.toInt() })
for(i in list) println(i)
fun selection(a: ArrayList<Int>) {
var min:Int
for (i in 0 until a.size) {
min = i
for (j in (i + 1) until a.size) {
if (a[j] < a[min]) {
min = j
swap(a, min, i)
fun swap(a : ArrayList<Int>, b: Int, c:Int) {
val temp = a[b]
a[b] = a[c]
a[c] = temp

Is it Efficient?

As you can see, in the above example, it consists of two for loops – one in line 9 and other in line 11 in the above example. So we know that the its Average and worst case Complexity is O(n2). Hence its inefficient compared to other algorithms.

In the next article we will be looking into few other important sorting techniques like bubble sort, merge sort etc.


Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.


Packages in Java

Hello World! Today's blog is about packages in java. Here, we will learn about what are packages and how we can use packages along with...

House Robber Problem | Maximum Sum of non-adjacent elements

In this blog post, we will discuss about how to find maximum sum of Non-Adjacent elements. Since House Robber Problem is a typical DP Problem...

Check Array Formation Through Concatenation | Leetcode Problem 1640

In this video, we will explain Check Array Formation Through Concatenation, Leetcode's 1640th problem in 2 different approaches along with a coding solution. Problem statement You are given...

Binary Tree Traversals in Kotlin – PreOrder, InOrder and PostOrder Traversals

Binary Tree Traversals are most common Tree Problems in an Interview as well as Competitive Programming. They can be efficient while searching, inserting and deleting...

Follow us


Most Popular