Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> JavaScript

JavaScript में समान स्ट्रिंग समूह (Similar String Groups)


दो स्ट्रिंग्स str1 और str2 समान हैं यदि हम str1 के दो अक्षरों (अलग-अलग स्थितियों पर) को स्वैप कर सकते हैं, ताकि यह str2 के बराबर हो जाए। साथ ही, दो स्ट्रिंग्स str1 और str2 समान हैं यदि वे बराबर हैं।

उदाहरण के लिए, "tars" और "rats" समान हैं (स्थिति 0 और 2 पर स्वैप करके), और "rats" और "arts" समान हैं, लेकिन "star", "tars", "rats", या "arts" के समान नहीं है।

ये मिलकर समानता द्वारा दो जुड़े हुए समूह बनाते हैं: {"tars", "rats", "arts"} और {"star"}. ध्यान दें कि "tars" और "arts" एक ही समूह में हैं भले ही वे सीधे समान न हों।

औपचारिक रूप से, प्रत्येक समूह ऐसा होता है कि एक शब्द समूह में है यदि और केवल यदि वह उस समूह में कम से कम एक अन्य शब्द के समान है।

स्ट्रिंग्स की एक सूची arr दी गई है जहां arr में प्रत्येक स्ट्रिंग arr में हर दूसरी स्ट्रिंग का एनाग्राम है। हमें एक फ़ंक्शन लिखना है जो पता लगाता है कि कितने समूह हैं।

उदाहरण

निम्नलिखित कोड देखें:

const arr = ["tars", "rats", "arts", "star"];

const isSimilar = (str1, str2) => {
  const obj = {};
  let counter = 0;
  for (let i = 0; i < str1.length; i++) {
    if (str1[i] !== str2[i]) { counter++; }
    obj[str1[i]] = str2[i];
  }
  return counter === 2 ? true : false;
};

const similarStringGroup = (arr = []) => {
  const group = [[arr[0]]];
  for (let i = 1; i < arr.length; i++) {
    let match = false;
    for (let j = 0; j < group.length; j++) {
      for (let k = 0; k < group[j].length; k++) {
        const booleanMatch = isSimilar(group[j][k], arr[i]);
        if (booleanMatch) {
          group[j].push(arr[i]);
          match = true;
          break;
        }
      }
      if (match === true) { break; }
    }
    if (match === false) { group.push([arr[i]]); }
  }
  return group.length;
};

console.log(similarStringGroup(arr));

आउटपुट

कंसोल आउटपुट निम्नलिखित है -

2

  1. - JavaScript split() मेथड: चरण-दर-चरण गाइड

    JavaScript split() मेथड एक स्ट्रिंग को सबस्ट्रिंग्स के अरे में विभाजित करता है। ये सबस्ट्रिंग्स एक नए अरे में जोड़े जाते हैं। split() सबस्ट्रिंग्स के नए अरे को लौटाता है। स्ट्रिंग पुनरावलोकन split() और slice() फंक्शन्स को देखने से पहले, हमें खुद को याद दिलाना चाहिए कि स्ट्रिंग्स कैसे काम करती हैं।

  1. - JavaScript में Strings का परिचय

    जावास्क्रिप्ट में एक स्ट्रिंग, जैसा कि कई अन्य प्रोग्रामिंग भाषाओं में होता है, एक डेटा टाइप है जो टेक्स्ट रूप में डेटा रखता है। वेब एप्लिकेशन के संदर्भ में स्ट्रिंग्स का एक सामान्य उपयोग फॉर्म से यूजर के इनपुट को रखना है। सर्च फॉर्म का एक उदाहरण लेते हुए, सर्च क्वेरी को स्ट्रिंग के रूप में स्टोर कि

  1. JavaScript में स्ट्रिंग को बूलियन में बदलें JavaScript में स्ट्रिंग को बूलियन में बदलें

    JavaScript में स्ट्रिंग को बूलियन में बदलना एक सामान्य कार्य है, लेकिन इसके कई तरीके हैं जिनके अलग-अलग व्यवहार होते हैं। सही विधि चुनना महत्वपूर्ण है। उदाहरण { const val = inputEle.value.trim(); sampleEle.innerHTML = ; // विभिन्न विधियां sampleEle.innerH