![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
剑指offer
阳光明媚123
这个作者很懒,什么都没留下…
展开
-
栈的压入、弹出
输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)public boolean IsPopOrder(int [] pushA,int [] popA) { int i,j,n=pushA.length; ArrayList...原创 2020-06-03 16:38:57 · 186 阅读 · 0 评论 -
用两个栈实现队列
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 void push(int node) { if(stack1.size()==0 && stack2.size()>0){ while(stack2.size()>0){ stack1.push(st...原创 2020-04-11 17:39:21 · 119 阅读 · 0 评论 -
回文数组
对于一个给定的正整数组成的数组 a[] ,如果将 a 倒序后数字的排列与 a 完全相同,我们称这个数组为“回文”的。例如, [1, 2, 3, 2, 1] 的倒序是他自己,所以是一个回文的数组;而 [1, 2, 3, 1, 2] 的倒序是 [2, 1, 3, 2, 1] ,所以不是一个回文的数组。对于任意一个正整数数组,如果我们向其中某些特定的位置插入一些正整数,那么我们总是能构造出一个回...原创 2020-04-09 14:32:48 · 1587 阅读 · 0 评论 -
数组查找
在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。由于数组从左至右从上至下递增,因此我们考虑左下角(或右上角)的元素,如果目标小于左下角元素,则往上寻找,如果目标大于左下角元素,则往右寻找。bool Find(int target, vector&...原创 2020-04-09 14:38:52 · 170 阅读 · 0 评论 -
替换空格
请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。void replaceSpace(char *str,int length) { int i; string s=""; int count=0; for(i=0;i&l...原创 2020-04-09 14:40:55 · 63 阅读 · 0 评论