从两个排序数组中找出最接近的对的 Python 程序
pythonserver side programmingprogramming
在本文中,我们将学习下面给出的问题陈述的解决方案。
问题陈述 − 给定两个数组,我们需要从两个排序数组中找出最接近的对
现在让我们观察下面实现中的解决方案 −
示例
# sys module import sys # pair def print_(ar1, ar2, m, n, x): # difference diff=sys.maxsize # index l = 0 r = n-1 while(l < m and r >= 0): # 最接近的对 if abs(ar1[l] + ar2[r] - x) < diff: res_l = l res_r = r diff = abs(ar1[l] + ar2[r] - x) # 对和 if ar1[l] + ar2[r] > x: r=r-1 else: l=l+1 # 打印结果 print("可用的最接近的对是 [",ar1[res_l],",",ar2[res_r],"]") # main ar1 = [1, 3, 6, 9] ar2 = [11, 23, 35, 50] m = len(ar1) n = len(ar2) x = 20 print_(ar1, ar2, m, n, x)
输出
可用的最接近的对是 [ 9 , 11 ]
所有变量均在本地范围内声明,其引用如上图所示。
结论
在本文中,我们了解了如何编写 Python 程序来从两个排序数组中找出最接近的一对