栈 相关概念 栈是一种特殊的线性表 只允许在固定的一端进行插入和删除元素操作。 进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。 原则:后进先出LIFO(Last In First Out) 压栈:栈的插入操作,入数据在栈顶 出栈:栈的删除操作,出数据也在栈顶 我们来实现自己的栈,首先用数组来 ...
分类:
其他好文 时间:
2020-06-14 11:14:49
阅读次数:
56
就是栈。用map存储括号类型,遇到右括号弹栈,不匹配为false。左括号压栈。 class Solution { HashMap<Character,Character> chars; public Solution(){ this.chars = new HashMap<Character,Cha ...
分类:
编程语言 时间:
2020-06-04 13:33:24
阅读次数:
66
一、前言 今天在看Thinking in C++这本书时,书中的一个例子引起了我的注意,具体是使用了下面这句 单看这条语句的语义会发现仅仅是使用一个简单的string的substr函数将所得子串push_back到strings。但是在阅读时我却对于substr的参数传递产生了疑惑,到底是先执行了+ ...
分类:
编程语言 时间:
2020-05-30 10:56:55
阅读次数:
89
题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长 ...
分类:
其他好文 时间:
2020-05-28 13:33:15
阅读次数:
61
输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。 例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等 ...
分类:
其他好文 时间:
2020-05-26 22:15:19
阅读次数:
67
题目: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度 ...
分类:
其他好文 时间:
2020-05-25 13:57:17
阅读次数:
64
问题: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度 ...
分类:
其他好文 时间:
2020-05-15 11:45:33
阅读次数:
86
得益于曾经看过一段时间的java,感觉听起JavaScript更顺心一些,里面关于引用压栈都能较快理解 一、关于JavaScript的基本语法 1.关于声明变量的问题,感觉JavaScript和Python是两个相当草率的编程语言,Python及其草率,之前java声明变量都是int a = 1,P ...
分类:
编程语言 时间:
2020-05-14 01:31:39
阅读次数:
75
栈(stack)又名堆栈,它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶(top),相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈(push),它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈(push), ...
分类:
编程语言 时间:
2020-04-28 00:21:04
阅读次数:
52
执行上下文栈 整个代码中一共产生了几个执行上下文对象? n+1 个 n 是调用函数的次数(函数内的调用次数也算) 1 是window对象 1.在全局代码执行前,JS引擎就会创建一个栈来存储管理所有的执行上下文对象 2.在全局执行上下文(window)确定后,将其添加到栈中(压栈) 3.在函数执行上下 ...
分类:
Web程序 时间:
2020-04-21 12:59:26
阅读次数:
53