समस्या
हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना आवश्यक है जो पहले और एकमात्र तर्क के रूप में गणितीय अभिव्यक्तियों की एक स्ट्रिंग लेता है।
हमारे फंक्शन का काम ऑपरेशंस और ऑपरेंड को जगह पर रखते हुए एक्सप्रेशन से कोष्ठक हटाना है।
उदाहरण के लिए, यदि फ़ंक्शन का इनपुट है -
इनपुट
const str ='u-(v-w-(x+y))-z';
आउटपुट
const output ='u-v+w+x+y-z';
उदाहरण
निम्नलिखित कोड है -
const str ='u-(vw-(x+y))-z';const removeParentheses =(str ='') => { चलो स्टैक =[] चलो lastSign ='+' के लिए (चलो चार का str) { अगर (char ==='(' || char ===')') {lastSign =stack[stack.length - 1] || '+'} और अगर (चार ==='+') {अगर (स्टैक [स्टैक। लंबाई - 1]! =='-' &&स्टैक [स्टैक। लंबाई - 1]! =='+') { स्टैक .push(lastSign) } } और अगर (char ==='-') { if (lastSign ==='-') { if (stack[stack.length - 1] ==='-') stack.pop () स्टैक। पुश ('+')} और { अगर (स्टैक [स्टैक। लंबाई - 1] ==='+') स्टैक। पॉप () स्टैक। पुश ('-')} } और { स्टैक। पुश (चार) } } वापसी स्टैक.जॉइन ('')।आउटपुट
u-v+w+x+y-z