2つのソートされた配列から最も近いペアを見つけるJavaプログラム
ソートされた2つの配列から最も近いペアを見つけるための、Javaコードは次のとおりです-
例
public class Demo { void closest_pair(int my_arr_1[], int my_arr_2[], int arr_1_len, int arr_2_len, int sum){ int diff = Integer.MAX_VALUE; int result_l = 0, result_r = 0; int l = 0, r = arr_2_len-1; while (l<arr_1_len && r>=0){ if (Math.abs(my_arr_1[l] + my_arr_2[r] - sum) < diff){ result_l = l; result_r = r; diff = Math.abs(my_arr_1[l] + my_arr_2[r] - result_l); } if (my_arr_1[l] + my_arr_2[r] > result_l) r--; else l++; } System.out.print("The closest pair that matches two arrays is [" + my_arr_1[result_l] + ", " + my_arr_2[result_r] + "]"); } public static void main(String args[]){ Demo my_ob = new Demo(); int my_arr_1[] = {56, 78, 99, 11}; int my_arr_2[] = {33, 12, 69, 87}; int arr_1_len = my_arr_1.length; int arr_2_len = my_arr_2.length; int val = 79; my_ob.closest_pair(my_arr_1, my_arr_2, arr_1_len, arr_2_len, val); } }
出力
The closest pair that matches two arrays is [56, 33]
Demoという名前のクラスには、「closest_pair」という名前の関数が含まれています。この関数は、両方の配列を反復処理し、前に指定した数値に非常に近い数値になる合計を確認します。配列からのこのペアは出力として返されます。 main関数では、Demoクラスの新しいインスタンスが定義され、配列が定義され、それらの長さがそれぞれ2つの変数に割り当てられます。この関数は、配列、その長さ、および値を渡すことによって呼び出されます。関連するメッセージがコンソールに表示されます。
-
長方形の周囲を見つけるJavaプログラム
この記事では、長方形の周囲を見つける方法を理解します。長方形の周囲長は、長方形のすべての辺の長さを加算して計算されます。 以下は長方形のデモンストレーションです。長方形の周囲は、長方形の2つの長さと2つの幅の全長です- 入力 入力が-であると仮定します The length of the sides of a rectangle are : 5, 8, 5, 8 出力 必要な出力は-になります Perimeter : 26 アルゴリズム Step 1 – START Step 2 – Declare 5 floating point variabl
-
2つのソートされた配列から最も近いペアを見つけるためのPythonプログラム
この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 − 2つの配列が与えられたので、2つのソートされた配列から最も近いペアを見つける必要があります 次に、以下の実装のソリューションを見てみましょう- 例 # sys module import sys # pair def print_(ar1, ar2, m, n, x): # difference diff=sys.maxsize # index l = 0 r = n-1 &