美团二面算法题-输出每对有效括号内的内容;

javascript 复制代码
<!-- 题目,输出每对有效括号内的内容;

输入:"(1+1)*2" 输出:1+1

输入: "((1+2)*(3+4))+2"  输出:1+2, 3+4, (1+2)*(3+4)

-->



function test (str) {

  let res = []

  let stask = []

  for(let i=0;i<str.length;i++) {

    if(str[i] ==='(') {

      stask.push(i)

    } else if(str[i] === ')') {

      let left = stask.pop()

      let temp = str.substring(left+1,i)

      res.push(temp)

    }

  }

  return res

}

这个题真的很简单啊,,,,但是我在面试的时候太紧张了,只想到用栈,确没想到栈里面应该存什么,,,,,,啊啊啊啊啊啊,刚结束面试,就想到了这么做,真遗憾。。以此记录一下了

相关推荐
Lee川30 分钟前
探索JavaScript的秘密令牌:独一无二的`Symbol`数据类型
javascript·面试
Lee川30 分钟前
深入浅出JavaScript事件机制:从捕获冒泡到事件委托
前端·javascript
光影少年30 分钟前
async/await和Promise的区别?
前端·javascript·掘金·金石计划
恋猫de小郭31 分钟前
Flutter 发布官方 Skills ,Flutter 在 AI 领域再添一助力
android·前端·flutter
心在飞扬32 分钟前
工具调用出错捕获提升程序健壮性
前端·后端
HelloReader32 分钟前
Tauri 命令作用域(Command Scopes)精细化控制你的应用权限
前端
心在飞扬33 分钟前
基于工具调用的智能体设计与实现(*)
前端·后端
心在飞扬34 分钟前
函数调用快速提取结构化数据使用技巧
前端·后端
心在飞扬37 分钟前
不支持函数调用的大语言模型解决技巧
前端·后端
codingWhat37 分钟前
如何实现一个「万能」的通用打印组件?
前端·javascript·vue.js