Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรมหลามสำหรับค้นหาคู่ที่ใกล้เคียงที่สุดจากสองอาร์เรย์ที่เรียงลำดับ


ในบทความนี้ เราจะเรียนรู้เกี่ยวกับวิธีแก้ปัญหาตามที่ระบุด้านล่าง

แจ้งปัญหา − เราได้รับอาร์เรย์สองชุด เราจำเป็นต้องค้นหาคู่ที่ใกล้เคียงที่สุดจากอาร์เรย์ที่จัดเรียงทั้งสองชุด

ทีนี้มาดูวิธีแก้ปัญหาในการใช้งานด้านล่าง -

ตัวอย่าง

# 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):
   # closest pair
      if abs(ar1[l] + ar2[r] - x) < diff:
         res_l = l
         res_r = r
         diff = abs(ar1[l] + ar2[r] - x)
   # pair sum
      if ar1[l] + ar2[r] > x:
         r=r-1
      else:
         l=l+1
   # Print the result
   print("The closest pair available is [",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)

ผลลัพธ์

The closest pair available is [ 9 , 11 ]

โปรแกรมหลามสำหรับค้นหาคู่ที่ใกล้เคียงที่สุดจากสองอาร์เรย์ที่เรียงลำดับ

ตัวแปรทั้งหมดได้รับการประกาศในขอบเขตท้องถิ่นและการอ้างอิงของตัวแปรนั้นดูได้จากรูปด้านบน

บทสรุป

ในบทความนี้ เราได้เรียนรู้เกี่ยวกับวิธีการสร้างโปรแกรม Python สำหรับค้นหาคู่ที่ใกล้เคียงที่สุดจากอาร์เรย์ที่จัดเรียงสองชุด