面试题
用栈翻转字符串
输入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