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

JavaScript में स्ट्रिंग को फॉर्मेट करके समान वर्णों को अलग करना


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

फ़ंक्शन को स्ट्रिंग में मौजूद वर्णों को पुनर्व्यवस्थित करने का प्रयास करना चाहिए ताकि कोई दो समान वर्ण एक-दूसरे के निकट न हों।

यदि ऐसा कम से कम एक संयोजन मौजूद है तो हमारा फ़ंक्शन वह संयोजन स्ट्रिंग वापस करेगा अन्यथा हमारा फ़ंक्शन एक खाली स्ट्रिंग वापस करेगा।

उदाहरण के लिए -

यदि इनपुट स्ट्रिंग है -

const str = 'add';

तो हमारा फ़ंक्शन आउटपुट कर सकता है -

const output = 'dad';

उदाहरण

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

const str = 'add';

const formatString = (str = '') => {
  const map = {};
  for (let i = 0; i < str.length; i++) {
    map[str[i]] = map[str[i]] || 0;
    map[str[i]]++;
  }
  let keys = Object.keys(map).sort((a, b) => {
    if (map[a] < map[b]) {
      return 1;
    };
    return -1;
  });
  let flag = str.length % 2 ? (Math.floor(str.length / 2) + 1) : str.length / 2;
  if (map[keys[0]] > flag) {
    return "";
  };
  const res = [];
  let index = 0, max = str.length - 1;
  while (keys.length) {
    let currKey = keys.shift();
    let count = map[currKey];
    while (count) {
      res[index] = currKey;
      index = index + 2;
      if (index > max)
        index = 1;
      count--;
    }
  }
  return res.join("");
};

console.log(formatString(str));

आउटपुट

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

dad

  1. - JavaScript में जांचना कि क्या स्ट्रिंग में सभी यूनिक कैरेक्टर्स हैं

    समस्याहमें एक JavaScript फ़ंक्शन लिखना है जो एक स्ट्रिंग लेता है और यदि स्ट्रिंग में सभी कैरेक्टर्स केवल एक बार दिखाई देते हैं तो true लौटाता है, अन्यथा false।उदाहरणनिम्नलिखिक कोड है − { for(let i = 0; i < str.length; i++){ const el = str[i]; if(str.indexOf(el) !== str.lastIndexOf(el)){ return

  1. - JavaScript में स्ट्रिंग के वर्णों को समूहों में पुनर्गठित करना

    समस्याहमें एक JavaScript फ़ंक्शन लिखना है जो एक स्ट्रिंग str को एकमात्र आर्गुमेंट के रूप में लेता है।स्ट्रिंग str में तीन प्रकार के वर्ण हो सकते हैं:अंग्रेजी अल्फाबेट: (A-Z), (a-z)अंक: 0-9विशेष वर्ण - बाकी सभी शेष वर्णहमारा फ़ंक्शन इस स्ट्रिंग के माध्यम से पुनरावृति करना चाहिए और ठीक तीन तत्वों वाली

  1. - C# में स्ट्रिंग के वर्णों की अदला-बदली

    स्ट्रिंग के वर्णों की अदला-बदली करने के लिए, Select मेथड का उपयोग करें।सबसे पहले, मान लें कि हमारी स्ट्रिंग है:string str = PQRQP;अब, आपको P के प्रत्येक घटना को Q से और Q को P से बदलना है:str.Select(a=> a == P ? Q : (a==Q ? P : a)).ToArray();उपरोक्त वर्णों को प्रतिस्थापित करता है।पूरा कोड देखें:उ