Golang : Bubble sort example
Example for Bubble sort algorithm implementation in Golang. Bubble sort a.k.a sinking sort, is a simple sorting algorithm that repeatedly steps through the elements in an array to be sorted, compares each pair of adjacent elements and swaps them if they are in the wrong order. The pass through the list is repeated until no more swaps are needed.
package main
import (
"fmt"
)
func bubbleSort(tosort []int) {
size := len(tosort)
if size < 2 {
return
}
for i := 0; i < size; i++ {
for j := size - 1; j >= i+1; j-- {
if tosort[j] < tosort[j-1] {
tosort[j], tosort[j-1] = tosort[j-1], tosort[j]
}
}
}
}
func main() {
unsorted := []int{1, 199, 3, 2, 5, 80, 99, 500}
fmt.Println("Before : ", unsorted)
bubbleSort(unsorted)
fmt.Println("After : ", unsorted)
}
Output :
Before : [1 199 3 2 5 80 99 500]
After : [1 2 3 5 80 99 199 500]
By Adam Ng
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+12k Golang : Read large file with bufio.Scanner cause token too long error
+16.1k Golang : Convert date string to variants of time.Time type examples
+23k Golang : bufio.NewReader.ReadLine to read file line by line
+6.8k Golang : Simple Jawi(Yawi) to Rumi(Latin/Romanize) converter
+7.9k Golang : How to pipe input data to executing child process?
+3.8k Golang : How to verify input is rune?
+7.7k Golang : Create S3 bucket with official aws-sdk-go package
+3.3k Golang : fmt.Println prints out empty data from struct
+12.4k Golang : Defer function inside init()
+3.9k Golang : Measure execution time for a function
+7.4k Golang : Bcrypting password
+4.7k Ubuntu : connect() to unix:/var/run/php5-fpm.sock failed (13: Permission denied) while connecting to upstream