編寫一個 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("Given array is already sorted.")
   } else {
      fmt.Println("Given array is not sorted.")
   }
}

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})
}

輸出

Given array is already sorted.
Given array is not sorted.
Given array is not sorted.

更新於: 2021 年 2 月 4 日

317 次檢視

開啟你的事業

完成課程,獲得認證

開始
廣告
© . All rights reserved.