Stuntkoala

Bubblesort in Go

Dec 6th, 2017
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Go 0.74 KB | None | 0 0
  1. package main
  2.  
  3. import ("fmt"
  4.         "math/rand"
  5.         "time")
  6.  
  7. const ARLEN int = 10
  8.  
  9. func randomArray() [ARLEN]int {
  10.  
  11.     //Reset Seed
  12.     seed := rand.NewSource(time.Now().UnixNano())
  13.     rnd := rand.New(seed)
  14.    
  15.     var arr [ARLEN]int
  16.     //Fill Array
  17.     for i:=0; i<ARLEN; i++ {
  18.         arr[i] = rnd.Intn(100)
  19.     }
  20.     return arr
  21. }
  22.  
  23. func bubbleSort(arr *[ARLEN]int){
  24.     changesDone := true
  25.     for i:=0; i < ARLEN && changesDone; i++ {
  26.         changesDone = false
  27.         for k:=0; k < ARLEN-1-i; k++ {
  28.             if arr[k] > arr[k+1] {
  29.                 temp := arr[k]
  30.                 arr[k] = arr[k+1]
  31.                 arr[k+1] = temp
  32.                 changesDone = true
  33.             }
  34.         }
  35.     }
  36. }
  37.  
  38. func main() {
  39.     arr := randomArray()
  40.     fmt.Println("generated random Array:", arr)
  41.  
  42.     bubbleSort(&arr)
  43.     fmt.Println("Bubblesorted Array:", arr)
  44. }
Add Comment
Please, Sign In to add comment