編寫一個 Go 語言程式,在陣列中查詢和給定和配對(O(n2))
示例
輸入陣列 = [4, 1, 6, 8, 7, 2, 3],和 = 11 => (4, 7) 或 (8, 3)
解決該問題的思路
- 步驟 1:定義一個方法,該方法接受一個數組和和。
- 步驟 2:從 0 迭代到n,作為i。
- 步驟 3:再次迭代一個for 迴圈從i+1 到n-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.
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP