day10
1.232用栈实现队列:栈先进后出要实现先进先出的队列,就需要有两个栈stackIn和stackOut来实现出队列时元素的反转。当入队时,直接进栈,出队时,则首先考虑用于出栈的stackOut是否为空,如果为空的话,则循环将stackIn中的元素压入stackOut中,然后再从stackOut中弹栈。
2.225用队列实现栈:一个队列即可完成,当要出栈的时候,就将队列中除最后一个元素以外的所有元素都出队列然后重新入队,再将第一个元素(原先的最后一个元素)出队。
3.20有效的括号:利用栈先进后出的特性来对括号进行配对。循环遍历这组括号,遇到左括号时,分别将他们对应的右括号压入栈中,当1、栈为空,但字符串还未遍历完;2、遍历到的右括号与从栈中弹出的右括号对不上;3、遍历完字符串后,栈不为空,还有元素 这三种情况时说明无效。
4.1047删除字符串中的所有相邻重复项:也是利用栈先进后出的特性来对相邻的重复字符进行一个删除操作。首先将字符串循环压入栈中,当遍历到的这个元素与栈顶元素相同时,就弹栈(删除)。
还学习了多态、虚函数。
2.225用队列实现栈:一个队列即可完成,当要出栈的时候,就将队列中除最后一个元素以外的所有元素都出队列然后重新入队,再将第一个元素(原先的最后一个元素)出队。
3.20有效的括号:利用栈先进后出的特性来对括号进行配对。循环遍历这组括号,遇到左括号时,分别将他们对应的右括号压入栈中,当1、栈为空,但字符串还未遍历完;2、遍历到的右括号与从栈中弹出的右括号对不上;3、遍历完字符串后,栈不为空,还有元素 这三种情况时说明无效。
4.1047删除字符串中的所有相邻重复项:也是利用栈先进后出的特性来对相邻的重复字符进行一个删除操作。首先将字符串循环压入栈中,当遍历到的这个元素与栈顶元素相同时,就弹栈(删除)。
还学习了多态、虚函数。
全部评论
相关推荐
点赞 评论 收藏
分享