摘要:
输入两个整数序列。 第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。 假设压入栈的所有数字均不相等。 例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列, 但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度 阅读全文
2019年4月6日
摘要:
定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。 注意这并不是简单找最小值的问题,数据会出栈哦,出栈了,你原来的最小数还是最小数么? 必须有个容器接收,什么都可以。若是简单的使用变量是不对的。 只需要辅助栈一直取到的是最小元素就好了。 阅读全文
摘要:
输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字, 例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字 1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10. 魔方旋转解法: 将这个矩 阅读全文
摘要:
输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) 头大不会,这是牛客大佬的暴力解法,就不详解班门弄斧了; 阅读全文
摘要:
输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) 链表跟树真的头大,毫无头绪,这是牛客大佬暴力解: /** public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = 阅读全文
摘要:
输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 递归,谁大谁的头结点后移; 阅读全文
摘要:
输入一个链表,输出该链表中倒数第k个结点。 注意不能直接head遍历,head返回,head是root; 阅读全文
摘要:
输入一个整数数组,实现一个函数来调整该数组中数字的顺序, 使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分。 并保证奇数和奇数,偶数和偶数之间的相对位置不变。 思想简单,想ac可没那么容易。 1.给个队列,筛选奇数,存进队列,再筛选存入;最后取出; 2.标记法,遇到奇数前移,移动的是上 阅读全文