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

जावास्क्रिप्ट में कोण ब्रैकेट्स को पार्स और बैलेंस करना


हमें कोण ब्रैकेट्स की एक स्ट्रिंग दी गई है, और हमें एक फ़ंक्शन लिखना है जो स्ट्रिंग के शुरुआत और अंत में ब्रैकेट्स जोड़कर सभी ब्रैकेट्स को मिलान करवाता है।

कोण ब्रैकेट्स मेल खाते हैं यदि हर '<' के लिए एक संबंधित '>' है और हर '>' के लिए एक संबंधित '<' है।

उदाहरण के लिए - यदि इनपुट स्ट्रिंग है -

const str = '><<><';

आउटपुट

तो आउटपुट होना चाहिए -

const output = '<><<><>>';

यहां, हमने शुरुआत में '<' और अंत में '>>' जोड़ा ताकि स्ट्रिंग बैलेंस हो जाए।

हम एक संख्या का उपयोग करेंगे जो अब तक खुले '<' टैग की संख्या गिनती रखेगी। और फिर, जब हम एक '>' टैग देखते हैं, यदि कोई वर्तमान खुला टैग नहीं है, तो हम स्ट्रिंग की शुरुआत में '<' जोड़ देंगे (खुले टैग गिनती को 0 पर रखते हुए)। फिर, अंत में, वर्तमान में खुले टैग की संख्या से मेल खाने वाले '>' की संख्या जोड़ देंगे।

उदाहरण

इसके लिए कोड होगा -

const str = '><<><'; 
const buildPair = (str = '') => { 
  let count = 0; 
  let extras = 0; 
  for (const char of str) { 
    if (char === '>') { 
      if (count === 0) { 
        extras++; 
      } else { 
        count--; 
      } 
    } else { 
      count++; 
    } 
  } 
  const leadingTags = '<'.repeat(extras); 
  const trailingTags = '>'.repeat(count); 
  return leadingTags + str + trailingTags; 
}; 
console.log(buildPair(str));

आउटपुट

कंसोल में आउटपुट होगा -

<><<><>>
  1. - JavaScript में JSON.parse() और इसका उपयोग

    JSON.parse() मेथड JSON.parse() एक JSON स्ट्रिंग को पार्स करके JavaScript ऑब्जेक्ट/ऐरे में बदलता है। सर्वर से डेटा प्राप्त करते समय उपयोगी (सर्वर हमेशा स्ट्रिंग भेजता है)। सिंटैक्स JSON.parse(text, reviver) text - पार्स करने वाली JSON स्ट्रिंग reviver (वैकल्पिक) - ट्रांसफॉर्मेशन फंक्शन उदाहरण &l

  1. JavaScript Const: ब्लॉक-स्कोप्ड कॉन्स्टेंट्स JavaScript Const: ब्लॉक-स्कोप्ड कॉन्स्टेंट्स

    const ES2015 (ES6) में पेश किया गया एक ब्लॉक-स्कोप्ड वेरिएबल डिक्लेरेशन है जो रीअसाइनमेंट को रोकता है। यह आधुनिक JavaScript में डिफ़ॉल्ट विकल्प होना चाहिए जब रीअसाइनमेंट की आवश्यकता न हो। उदाहरण { try { a = 44; // TypeError: Assignment to constant variable } catch (e

  1. - JavaScript में अल्फाबेट फाइट समस्या को हल करना

    समस्या एक ऐसी स्थिति पर विचार करें जहां वर्णमाला के दो समूहों की सेनाएं एक-दूसरे से लड़ रही हैं। दोनों के सैनिक और उनके वजन इस प्रकार हैं - टीम A सैनिकवजन A1 B2 C3 D4 टीम B सैनिकवजन W1 X2 Y3 Z4 सैनिकों के अलावा, अखाड़े में बम भी हैं जिन्हें ! से दर्शाया गया है, और एक बम उसके आसन्न पक्षों पर