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

जावास्क्रिप्ट में एक स्ट्रिंग को अधिकतम भागों में विभाजित करना

<घंटा/>

समस्या

हमें एक जावास्क्रिप्ट फ़ंक्शन लिखने की आवश्यकता है जो एक स्ट्रिंग, str को पहले और एकमात्र तर्क के रूप में लेता है।

हमारे फ़ंक्शन का उद्देश्य इस स्ट्रिंग को अधिक से अधिक भागों में विभाजित करना है ताकि प्रत्येक अक्षर अधिक से अधिक एक भाग में दिखाई दे, और इन भागों के आकार का प्रतिनिधित्व करने वाले पूर्णांकों की एक सरणी लौटाए।

उदाहरण के लिए, यदि फ़ंक्शन का इनपुट है

इनपुट

const str = "ababcbacadefegdehijhklij";

आउटपुट

const output = [9, 7, 8];

आउटपुट स्पष्टीकरण

विभाजन "अबबबका", "डिफगडे", "हिज्हक्लिज" है। यह एक विभाजन है ताकि प्रत्येक अक्षर अधिक से अधिक एक भाग में दिखाई दे। "ababcbacadefegde", "hijhklij" जैसा विभाजन गलत है, क्योंकि यह स्ट्रिंग str को कम भागों में विभाजित करता है।

उदाहरण

निम्नलिखित कोड है -

const str = "ababcbacadefegdehijhklij";
const splitStrings = (str = '') => {
   const res = []
   const map = {}
   for (let i = 0; i < str.length; i++) {
      map[str[i]] = i
   }
   let start = 0
   while (start <= str.length - 1) {
      let end = map[str[start]]
      for (let i = start + 1; i < end; i++) {
         const currentEnd = map[str[i]]
         if (currentEnd > end) {
            end = currentEnd
         }
      }
      res.push(end - start + 1)
      start = end + 1
   }
   return res
};
console.log(splitStrings(str));

आउटपुट

[ 9, 7, 8 ]

  1. जादुई स्ट्रिंग:जावास्क्रिप्ट में प्रश्न

    समस्या एक जादुई स्ट्रिंग स्ट्र में केवल 1 और 2 होते हैं और निम्नलिखित नियमों का पालन करते हैं - स्ट्रिंग स्ट्र जादुई है क्योंकि वर्णों 1 और 2 की सन्निहित घटनाओं की संख्या को संयोजित करने से स्ट्रिंग स्वयं उत्पन्न होती है। स्ट्रिंग स्ट्र के पहले कुछ तत्व निम्नलिखित हैं - str = "12211212212211

  1. जावास्क्रिप्ट में 0s और 1s की स्ट्रिंग में एक संख्या स्ट्रिंग को एन्कोड करना

    समस्या हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो एक स्ट्रिंग लेता है जो एक दशमलव संख्या का प्रतिनिधित्व करता है। हमारे फ़ंक्शन को निम्नलिखित नियमों के आधार पर इस दशमलव को बाइनरी में कनवर्ट/एन्कोड करना चाहिए। n के प्रत्येक अंक d के लिए चलो k, d के बिट्स की संख्या है हम k-1 को अंक 0 के बाद और उसके

  1. जावास्क्रिप्ट में एक दूसरे के करीब संख्या को n भागों में विभाजित करना

    समस्या हमें एक जावास्क्रिप्ट फ़ंक्शन लिखने की आवश्यकता है जो पहले तर्क के रूप में एक संख्या, संख्या और दूसरे तर्क के रूप में दूसरी संख्या, भागों को लेता है। हमारे फ़ंक्शन को संख्या संख्या को बिल्कुल (भागों) संख्याओं में विभाजित करना चाहिए और हमें इन दो शर्तों को ध्यान में रखना चाहिए - संख्याएं यथ