কম্পিউটার

C# ব্যবহার করে ব্যাকট্র্যাকিং করে প্রদত্ত অ্যারের থেকে স্বতন্ত্র উপসেটগুলি কীভাবে খুঁজে পাবেন?


স্বতন্ত্র উপসেট সমস্যা আমাদের প্রদত্ত অ্যারের থেকে ভিন্ন সমন্বয় দেয়।

যখন টার্গেট 2 হয় তখন অ্যারে থেকে, আমরা 2 নম্বরের সাথে সামঞ্জস্যপূর্ণ সমস্ত কম্বিনেশন নিই, যখন অ্যারে থেকে টার্গেট তিন হয়, তখন আমরা 3 গণনার সাথে সামঞ্জস্যপূর্ণ সমস্ত সমন্বয় নিই। নীচের উদাহরণে অ্যারে হল [ 1,2,3] এবং লক্ষ্য হল 2। সুতরাং, আমরা 2 নম্বর “1,2”, “2,3”,”1,3”” এর সাথে সম্পর্কিত সমস্ত সমন্বয় গ্রহণ করি।

উদাহরণ

using System;
using System.Collections.Generic;
using System.Text;
using System.Linq;
namespace ConsoleApplication{
   public class BackTracking{
      public void Subsets(int[] array){
         List<int> currentList = new List<int>();
         List<string> results = new List<string>();
         BackTrackkingCombination(array, 2, 0, currentList, results);
         foreach (var item in results){
            StringBuilder s = new StringBuilder();
            foreach (var item1 in item){
               s.Append(item1.ToString());
            }
            Console.WriteLine(s);
            s = null;
         }
      }
      public void BackTrackkingCombination(int[] array, int size, int startIndex, List<int> currentList, List<string> results){
         if (currentList.Count == size){
            StringBuilder s = new StringBuilder();
            foreach (var item in currentList){
               s.Append(item);
            }
            results.Add(s.ToString());
            return;
         }
         for (int i = startIndex; i < array.Length; i++){
            currentList.Add(array[i]);
            BackTrackkingCombination(array, size, i + 1, currentList, results); ;
            currentList.Remove(array[i]);
         }
      }
   }
   class Program{
      static void Main(string[] args){
         BackTracking b = new BackTracking();
         int[] arrs = { 1, 2, 3 };
         b.Subsets(arrs);
      }
   }
}

আউটপুট

12
13
23

  1. C# প্রোগ্রাম ল্যাম্বডা এক্সপ্রেশন ব্যবহার করে একটি অ্যারে থেকে ক্ষুদ্রতম উপাদান খুঁজে বের করতে

  2. C# এ প্রদত্ত অ্যারের র‌্যাঙ্ক কীভাবে খুঁজে পাবেন?

  3. একটি সম্পত্তি ব্যবহার করে জ্যাগড অ্যারের দৈর্ঘ্য কীভাবে খুঁজে পাবেন?

  4. আপনি কিভাবে C# এ একটি অ্যারের দৈর্ঘ্য খুঁজে পাবেন?