কম্পিউটার

জাভা প্রোগ্রাম দুটি সাজানো অ্যারে থেকে নিকটতম জুটি খুঁজে বের করতে


দুটি সাজানো অ্যারে থেকে সবচেয়ে কাছের জুটি খুঁজে পেতে, জাভা কোডটি নিম্নরূপ -

উদাহরণ

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]

ডেমো নামের একটি ক্লাসে ‘closest_pair’ নামের একটি ফাংশন রয়েছে, যেটি উভয় অ্যারের মাধ্যমে পুনরাবৃত্তি করে এবং পরীক্ষা করে যে কোন যোগফলটি পূর্বে নির্দিষ্ট করা একটি সংখ্যার খুব কাছাকাছি একটি সংখ্যার সাথে যোগ করে। অ্যারে থেকে এই জোড়াটি আউটপুট হিসাবে ফিরে আসে। প্রধান ফাংশনে, ডেমো ক্লাসের একটি নতুন উদাহরণ সংজ্ঞায়িত করা হয়, অ্যারেগুলি সংজ্ঞায়িত করা হয় এবং তাদের দৈর্ঘ্য যথাক্রমে দুটি ভেরিয়েবলের জন্য নির্ধারিত হয়। অ্যারে, তাদের দৈর্ঘ্য এবং মান পাস করে ফাংশনটিকে বলা হয়। প্রাসঙ্গিক বার্তাটি কনসোলে প্রদর্শিত হয়৷


  1. একটি বৃত্তের পরিধি খুঁজে পেতে জাভা প্রোগ্রাম

  2. জাভা প্রোগ্রাম একটি ট্রাপিজিয়াম এর এলাকা খুঁজে বের করতে

  3. একটি আয়তক্ষেত্রের পরিধি খুঁজে পেতে জাভা প্রোগ্রাম

  4. দুটি সাজানো অ্যারে থেকে সবচেয়ে কাছের জুটির সন্ধানের জন্য পাইথন প্রোগ্রাম