编写Golang程序以检查给定数组是否已排序(使用冒泡排序技术)

例子

  • 输入arr = [7、15、21、26、33] =>数组已排序。

  • 输入arr = [7,5,1,6,3] =>数组未排序。

解决这个问题的方法

  • 步骤1:将数组从第0索引迭代到n-1

  • 步骤2:将数组从第0索引迭代到n-1-i,其中i是上述循环的索引。

  • 步骤3:如果在第一次迭代中未发生交换,则打印“数组已排序”。

  • 步骤4:如果发生交换,则打印“数组未排序”。

程序

package main
import "fmt"
func checkSortedArray(arr []int){
   sortedArray := true
   for i:=0; i<=len(arr)-1; i++{
      for j:=0; j<len(arr)-1-i; j++{
         if arr[j]> arr[j+1]{
            sortedArray = false
            break
         }
      }
   }
   if sortedArray{
      fmt.Println("给定数组已排序。")
   } else {
      fmt.Println("给定数组未排序。")
   }
}

func main(){
   checkSortedArray([]int{1, 3, 5, 6, 7, 8})
   checkSortedArray([]int{1, 3, 5, 9, 4, 2})
   checkSortedArray([]int{9, 7, 4, 2, 1, -1})
}
输出结果
给定数组已排序。
给定数组未排序。
给定数组未排序。