Sorting algorithms/Bogosort: Difference between revisions

Content added Content deleted
Line 3,336: Line 3,336:
=={{header|Vlang}}==
=={{header|Vlang}}==
Updated for Vlang version 0.2.2
Updated for Vlang version 0.2.2
<lang ecmascript>import rand
<lang go>import rand


fn shuffle(mut arr []int) {
fn shuffle_array(mut arr []int) {
for i := arr.len - 1; i >= 0; i-- {
for i := arr.len - 1; i >= 0; i-- {
j := rand.intn(i + 1)
j := rand.intn(i + 1)
arr[i], arr[j] = arr[j], arr[i]
arr[i], arr[j] = arr[j], arr[i]
}
}
}
}


fn is_sorted(arr []int) bool {
fn is_sorted(arr []int) bool {
for i := 0; i < arr.len - 1; i++ {
for i := 0; i < arr.len - 1; i++ {
if arr[i] > arr[i + 1] {
if arr[i] > arr[i + 1] {
return false
return false
}
}
}
}
return true
return true
}
}


fn sort_array(mut arr []int) {
fn sort_array(mut arr []int) {
for !is_sorted(arr) {
for !is_sorted(arr) {
shuffle(mut arr)
shuffle_array(mut arr)
println('After Shuffle: $arr')
println('After Shuffle: $arr')
}
}
}
}


fn main() {
fn main() {
mut arr := [6, 9, 1, 4]
mut array := [6, 9, 1, 4]
println('Input: $arr')
println('Input: $array')
sort_array(mut arr)
sort_array(mut array)
println('Output: $arr')
println('Output: $array')
}</lang>
}
</lang>
{{out}}
{{out}}
<pre>Input: [6, 9, 1, 4]
<pre>Input: [6, 9, 1, 4]