編寫一個 Go 語言程式,在陣列中查詢和給定和配對(O(n2))


示例

輸入陣列 = [4, 1, 6, 8, 7, 2, 3],和 = 11 => (4, 7) 或 (8, 3)

解決該問題的思路

  • 步驟 1:定義一個方法,該方法接受一個數組和
  • 步驟 2:從 0 迭代到n,作為i
  • 步驟 3:再次迭代一個for 迴圈從i+1n-1,作為j
  • 步驟 4:如果 arr[i] + arr[j] == sum,則返回 arr[i] 和 arr[j]。
  • 步驟 5:最後,輸出找不到該對數。

程式

線上演示

package main
import (
   "fmt"
)
func findSumPair(arr []int, sum int){
   for i:=0; i<len(arr)-1; i++{
      for j:=i+1; j<len(arr); j++{
         if arr[i]+arr[j] == sum{
            fmt.Printf("Pair for given sum is (%d, %d).\n", arr[i], arr[j])
            return
         }
      }
   }
   fmt.Println("Pair not found in the given array.")
}

func main(){
   findSumPair([]int{4, 3, 6, 7, 8, 1, 9}, 15)
   findSumPair([]int{4, 3, 6, 7, 8, 1, 9}, 100)
}

輸出

Pair for given sum is (6, 9).
Pair not found in the given array.

更新於: 2021 年 2 月 4 日

456 次瀏覽

啟動你的 事業

完成課程以獲得認證

開始
廣告
© . All rights reserved.