Пример усовершенствованной сортировки пузырьком
The Go Playground - запустить код
package main import "fmt" func cocktailsort(lst []int) []int{ n := len(lst) left:=0 right:=n-1 for { for i := left;i<right;i++{ if lst[i] > lst[i+1]{ lst[i],lst[i+1] = lst[i+1],lst[i] } } right -= 1 fmt.Println(lst) for i := right; i > left; i-- { if lst[i] < lst[i - 1] { lst[i], lst[i - 1] = lst[i - 1], lst[i] } } left += 1 fmt.Println(lst) fmt.Println(left,right) if left >= right{ break } } return lst } func main(){ lst := []int{5,4,1,2,0,123,1234,32,12,2345,99} lst = cocktailsort(lst) }
Комментарии 0
Пока нет комментариев. Станьте первым!