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

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

}

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

相关推荐
pas1366 分钟前
47-mini-vue 升级monorepo管理项目
前端·javascript·vue.js
浮桥8 分钟前
uniapp + h5 -- 简易抽奖转盘组件(文字版)
前端·javascript·uni-app
Swift社区14 分钟前
Flutter 中如何优雅地处理复杂表单
前端·flutter·前端框架
这是个栗子16 分钟前
前端开发中的常用工具函数(三)
前端·javascript·charat
慧一居士16 分钟前
Vite 常用插件详解与使用指南
前端
切糕师学AI18 分钟前
JavaScript 中 == 和 === 的区别
javascript·js语法
之歆18 分钟前
Vue3 + Vite2.0 全栈开发实践:从零到一构建通用后台管理系统-下
javascript·vue.js·vue3
zhougl99618 分钟前
前端UI框架
前端·ui
love530love9 小时前
Scoop 完整迁移指南:从 C 盘到 D 盘的无缝切换
java·服务器·前端·人工智能·windows·scoop
王码码203510 小时前
Flutter for OpenHarmony:Flutter 三方库 bluez 玩转 Linux 风格的蓝牙操作(蓝牙底层互操作)
linux·运维·服务器·前端·flutter·云原生·harmonyos