go_排序算法_奇偶排序
奇偶排序
核心思想:奇数位和偶数位的数据交替比较,最终实现排序
代码实现:
package main
import "fmt"
func IsSort(arr []int) []int {
	flag := false
	if len(arr) <= 1 {
		return arr
	}
	for flag == false {
		flag = true
		for i := 0; i < len(arr)-1; i = i + 2 {
			if arr[i] > arr[i+1] {
				arr[i], arr[i+1] = arr[i+1], arr[i]
				flag = false
			}
		}
		for i := 1; i < len(arr)-1; i = i + 2 {
			if arr[i] > arr[i+1] {
				arr[i], arr[i+1] = arr[i+1], arr[i]
				flag = false
			}
		}
	}
	return arr
}
func main() {
	arr := []int{5, 555, 4, 7, 5, -7, 99}
	fmt.Println(IsSort(arr))
} 
                    
                     
                    
                 
                    
                
 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号