কম্পিউটার

প্রদত্ত স্ট্রিংগুলি সি# ব্যবহার করে আইসোমরফিক কিনা তা কীভাবে পরীক্ষা করবেন?


দুটি স্ট্রিং, X এবং Y,কে আইসোমরফিক বলা হয় যদি X-এর প্রতিটি অক্ষরের সমস্ত ঘটনাকে Y পেতে অন্য অক্ষর দিয়ে প্রতিস্থাপন করা যায় এবং এর বিপরীতে। উদাহরণস্বরূপ, ACAB এবং XCXY স্ট্রিংগুলি বিবেচনা করুন। অক্ষরের ক্রম সংরক্ষণ করার সময় একটি অক্ষরের সমস্ত ঘটনা অবশ্যই অন্য অক্ষর দিয়ে প্রতিস্থাপন করা উচিত। কোন দুটি অক্ষর একই অক্ষরের সাথে মানচিত্র করতে পারে না, তবে একটি অক্ষর নিজেই মানচিত্র করতে পারে৷

উদাহরণ 1

ইনপুট ৷ − s ="ডিম", t ="যোগ করুন"

আউটপুট - সত্য

উদাহরণ 2

ইনপুট ৷ − s ="foo", t ="বার"

আউটপুট - মিথ্যা

সময়ের জটিলতা − O(N)

স্পেস জটিলতা − O(N)

কোড

public class Arrays{
   public bool IsStringIsomorphic(string s, string t){
      if (s == null || t == null){
         return false;
      }
      int[] chars1 = new int[128];
      int[] chars2 = new int[128];
      for (int i = 0; i < s.Length; i++){
         if (chars1[s[i]] != chars2[t[i]]){
            return false;
         }
         else{
            chars1[s[i]] = i + 1;
            chars2[t[i]] = i + 1;
         }
      }
      return true;
   }
}

static void Main(string[] args){
   Console.WriteLine(s.IsStringIsomorphic("add", "egg"));
}

আউটপুট

True

  1. C# ব্যবহার করে সংখ্যাটি 2 দ্বারা বিভাজ্য কিনা তা কীভাবে খুঁজে পাবেন?

  2. প্রদত্ত বেসে একটি সংখ্যার পরপর 0 আছে কিনা পরীক্ষা করুন বা পাইথন ব্যবহার করছেন না

  3. পাইথনে প্রদত্ত শর্ত অনুসারে দুটি স্ট্রিং সমতুল্য কিনা তা পরীক্ষা করুন

  4. প্রদত্ত সংখ্যাগুলি পাইথনে কাজিন প্রাইম কিনা তা পরীক্ষা করুন