Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C#

सी # का उपयोग करके बैकट्रैकिंग करके मोबाइल में कीपैड मूल्य के सभी संयोजन कैसे प्राप्त करें?

समस्या को छोटी और सरल "उप-समस्याओं" में विभाजित किया जा सकता है, जिसे और अधिक सरल और छोटी उप-समस्याओं में विभाजित किया जा सकता है। हम प्रत्येक अंक को एक-एक करके लेते हैं और किसी भी अंक से पहुंचने योग्य सभी अंकों की गणना करते हैं, प्रत्येक अंक से पहुंचने योग्य अंकों के मानचित्रण को संग्रहीत करने के लिए मानचित्र का उपयोग करते हैं। जब अंक n-अंक बन जाए, तो गिनती को अपडेट करें।

उदाहरण

using System;
using System.Collections.Generic;
namespace ConsoleApplication{
   public class BackTracking{
      private string GetKeyPadValueBasedOnInput(string digit){
         Dictionary keypad = new Dictionary();
         keypad.Add("2", "abc");
         keypad.Add("3", "def");
         keypad.Add("4", "ghi");
         keypad.Add("5", "jkl");
         keypad.Add("6", "mno");
         keypad.Add("7", "pqrs");
         keypad.Add("8", "tuv");
         keypad.Add("9", "wxyz");
         return keypad.GetValueOrDefault(digit);
      }
      public void FindSequence(string currentList, string digits, List output){
         if (digits.Length == 0){
            output.Add(currentList);
            return;
         }
         else{
            string digit = digits.Substring(0, 1);
            string letters = GetKeyPadValueBasedOnInput(digit);
            for (int i = 0; i < letters.Length; i++){
               char letter = GetCHarFromString(letters, i);
               FindSequence(currentList + letter, digits.Substring(1), output);
            }
         }
      }
      private char GetCHarFromString(string letters, int value){
         char[] charArr = letters.ToCharArray();
         return charArr[value];
      }
   }
   class Program{
      static void Main(string[] args){
         BackTracking b = new BackTracking();
         List<string> output = new List<string>();
         b.FindSequence("", "34", output);
         foreach (var item in output){
            Console.WriteLine(item);
         }
      }
   }
}

आउटपुट

dg
dh
di
eg
eh
ei
fg
fh
fi

  1. C++ का उपयोग करके OpenCV में किसी विशिष्ट पिक्सेल का मान कैसे प्राप्त करें?

    किसी विशिष्ट पिक्सेल के मान को पढ़ने के लिए, हम at या डायरेक्ट एक्सेस पद्धति का उपयोग कर सकते हैं। यहां, हम दोनों तरीकों के बारे में जानेंगे। आइए एट विधि से शुरू करते हैं। निम्न प्रोग्राम RGB छवि के (10, 29) पर स्थित पिक्सेल मान को पढ़ता है। उदाहरण #शामिल करें jpg);//एक छवि लोड करना // int x =image

  1. टिंकर का उपयोग करके एंट्री विजेट में एक बटन का मूल्य कैसे प्राप्त करें?

    किसी भी टिंकर एप्लिकेशन में बटन एक बहुत ही उपयोगी विजेट हैं। एंट्री विजेट में मान डालने वाले फ़ंक्शन को परिभाषित करके हम एंट्री विजेट में किसी भी बटन का मान प्राप्त कर सकते हैं। मान प्राप्त करने के लिए, हमें पहले एंट्री विजेट पर प्रदर्शित होने वाले विशिष्ट मान को जोड़ने के लिए कमांड वाले बटन को परिभ

  1. रेडिस एचवीएएलएस - हैश वैल्यू में निहित सभी मूल्यों को कैसे प्राप्त करें

    इस ट्यूटोरियल में, हम सीखेंगे कि एक कुंजी पर संग्रहीत हैश मान में निहित सभी मान कैसे प्राप्त करें। इसके लिए हम रेडिस HVALS . का उपयोग करेंगे आदेश। HVALS कमांड यह आदेश एक निर्दिष्ट कुंजी पर संग्रहीत हैश मान में निहित सभी फ़ील्ड के मान देता है। यदि कुंजी मौजूद नहीं है, तो एक खाली सूची लौटा दी जाती ह