编写一个 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