232
双栈模拟队列其实是已经做过的题目,思路都有,主要是pop 需要双栈来实现。
但对于基本的数据结构的定义并不是很清楚
225
同232 甚至都不是很清楚js shift 的用法
20
initial commit
/**
* @param {string} s
* @return {boolean}
*/
var isValid = function(s) {
const leftSymbol = []
const rightSymbolToLeftSymbol = {')' : '(', ']': '[', '}':'{'}
for(let i = 0; i < s.length; i++){
if(s[i] == '(' || s[i] == '{' || s[i] == '['){
leftSymbol.push(s[i])
}
if(s[i] == ')' || s[i] == '}' || s[i] == ']' ){
let tempSymbol = leftSymbol.pop()
if(tempSymbol !== rightSymbolToLeftSymbol[s[i]]){
return false
}
}
}
return leftSymbol.length === 0 ? true: false
};
1047
用栈会很快乐的简单题
执行用时:68 ms, 在所有 JavaScript 提交中击败了92.21%的用户
/**
* @param {string} s
* @return {string}
*/
var removeDuplicates = function(s) {
const charList = []
for(let i = 0; i < s.length; i++){
let tempSymbol = charList.pop()
if(tempSymbol !== s[i]){
charList.push(tempSymbol)
charList.push(s[i])
}
}
return charList.join('')
};