কম্পিউটার টিউটোরিয়াল

অ্যানাগ্রাম সাবস্ট্রিং সার্চের জন্য জাভা প্রোগ্রাম


জাভাতে অ্যানাগ্রাম সাবস্ট্রিং সার্চের একটি উদাহরণ নিচে দেওয়া হলো:

উদাহরণ

public class Demo{    static final int max_val = 256;    static boolean compare_vals(char my_arr_1[], char my_arr_2[]){       for (int i = 0; i < max_val; i++)       if (my_arr_1[i] != my_arr_2[i])       return false;       return true;    }    static void search_subs(String my_pattern, String my_text){       int pat_len = my_pattern.length();       int txt_len = my_text.length();       char[] count_pat = new char[max_val];       char[] count_txt = new char[max_val];       for (int i = 0; i < pat_len; i++){          (count_pat[my_pattern.charAt(i)])++;          (count_txt[my_text.charAt(i)])++;       }       for (int i = pat_len; i < txt_len; i++){          if (compare_vals(count_pat, count_txt))          System.out.println("The element was found at index " + (i - pat_len));          (count_txt[my_text.charAt(i)])++;          count_txt[my_text.charAt(i-pat_len)]--;       }       if (compare_vals(count_pat, count_txt))       System.out.println("The element was found at index " + (txt_len - pat_len));    }    public static void main(String args[]){       String my_text = "ABNFGHABNJGH";       String my_pattern = "NFGH";       search_subs(my_pattern, my_text);    } }

আউটপুট

The element was found at index 2

Demo ক্লাসে একটি কনস্ট্যান্ট মান এবং একটি বুলিয়ান ফাংশন সংজ্ঞায়িত করা হয়েছে যা দুটি অ্যারে নেয়। এটি উভয় অ্যারেটের ওভার কনস্ট্যান্ট মান পর্যন্ত ইটেরেট করে। এটি true বা false রিটার্ন করে নির্ভর করে অ্যারেতে কমপেয়ার করা এলিমেন্টগুলো সমান বা অসমান কিনা।

আরেকটি স্ট্যাটিক ফাংশন টেক্সট এবং টেক্সটে চেক করার প্যাটার্ন নেয় এবং প্যাটার্ন ও স্ট্রিংয়ের ওভার ইটেরেট করে। প্যাটার্ন এবং স্ট্রিংয়ের উভয় কাউন্ট Increments করা হয়েছে। আবার একটি 'for' লুপ চালানো হয়েছে এবং প্যাটার্ন ও টেক্সটের উভয় কাউন্ট কমপেয়ার করা হয়েছে। যদি সেগুলো সমান হয়, ইনডেক্স প্রদর্শন করা হয়। অন্যথায়, একটি প্রাসঙ্গিক মেসেজ প্রদর্শন করা হয়। main ক্লাসে, প্যাটার্ন এবং টেক্সট সংজ্ঞায়িত করা হয়েছে এবং ফাংশনটি কল করা হয়েছে।

  1. ককটেইল সোর্টের জন্য জাভা প্রোগ্রাম

  2. জাভাতে ArrayList-এ স্ট্রিং খোঁজা (Search) কীভাবে করবেন?

  3. জাভা প্রোগ্রাম: স্ট্রিং-এ স্বরবর্ণ গণনা করা

  4. এনাগ্রাম সাবস্ট্রিং সার্চের পাইথন প্রোগ্রাম