用栈翻转字符串

面试题

用栈翻转字符串

输入A1B2C3,返回3C2B1A

要求:只能用栈的 push pop 两个 API

技术要点

  • 栈 : 先进后出
  • 赋值操作是一种表达式,在条件语句中,只要赋值成功,则条件的求值结果就是true

参考答案

js 复制代码
function stackReverseStr(str) {
  let stack = [];
  for (const char of str) {
    stack.push(char);
  }

  let result = "";
  let newChar = "";

  while ((newChar = stack.pop())) {
    result += newChar;
  }

  return result;
}

let a = "A1B2C 3";

let b = stackReverseStr(a);

console.log(b); // 打印 3C2B1A
相关推荐
志尊宝21 分钟前
AI原生前端开发(039):AI辅助的Nuxt 4全栈开发
前端·vue.js·ai-native
FRing031 小时前
JavaScript入门到精通三十二(深拷贝、浅拷贝、递归函数)
开发语言·前端·javascript
excel1 小时前
双 Token 与前端使用 Crypto 公私钥鉴权换 Token,哪种方案更好?
前端·后端
外收内放2 小时前
Python基础语法练习题(73)
java·前端·python
风骏时光牛马2 小时前
面向复杂场景的大模型应用落地与能力优化实践
前端
小小善后师2 小时前
我做了个病历归档小程序,被 AI 识别的"最后一公里"狠狠上了一课
前端
H_Lisa2 小时前
我用 Express 写了个 MCP,Claude 直接调用我的 API 了
前端
IT_陈寒3 小时前
React的useEffect依赖数组把我坑惨了
前端·人工智能·后端
兰亭妙微UI设计公司4 小时前
兰亭妙微ui设计公司分享:B端组件命名如何支持团队协作
前端·javascript·vue.js
云和数据.ChenGuang4 小时前
光哥说Python 异常深度解析:从异常模型到工程化实践
java·前端·人工智能·python·langchain