年少挽剑世无双·
年少挽剑世无双·
全部文章
分类
剑指Offer(7)
未归档(4)
题解(42)
归档
标签
去牛客网
登录
/
注册
年少挽剑世无双
全部文章
(共53篇)
剑指Offer第二十三题:二叉搜索树的后序遍历序列
题目描述输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。解答:思路:递归方法:一个n个数的数组,最后一位必定是根节点,前面n-1个数的前一半在左子树,后一半在右子树,那么就符合条件。对前后数据再做同样的判断。p...
2020-03-10
0
590
剑指Offer第二十二题:从上往下打印二叉树
题目描述从上往下打印出二叉树的每个节点,同层节点从左至右打印。 解答:思路:用队列的结构正好符合题目要求,每取出一棵子树的根节点就加入他的子节点,直到队列中没有元素,LinkedList实现了queue的接口。public class Q_22 { public ArrayList<Integ...
2020-03-10
0
601
剑指Offer第二十一题:栈的压入丶弹出序列
题目描述输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度...
2020-03-10
1
794
剑指Offer第二十题:包含min函数的栈
题目描述定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。注意:保证测试中不会当栈为空的时候,对栈调用pop()或者min()或者top()方法。 解答:思想:方法一 添加一个最小值的栈(这种方法比较好实现) 方法二:下面这个方法是看题解...
2020-03-09
2
1128
剑指Offer第十九题:顺时针打印矩阵
题目描述输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下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. 解答:用标记矩阵来记...
2020-03-09
1
676
剑指Offer第十八题:二叉树的镜像
题目描述操作给定的二叉树,将其变换为源二叉树的镜像。输入描述:二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 ...
2020-03-09
0
584
剑指Offer第十七题:树的子结构
题目描述输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) 解答:1.子结构相同指的是能在待匹配的树中找到一个相同形状和数值的树。这里和子树相同有些不一样。 public class Q_17 { public boolean HasSubtree(TreeN...
2020-03-09
2
844
剑指Offer第十六题:合并两个排序的链表
题目描述输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 解答:1.遍历两个链表,按大小顺序拼接。public class Q_16 { public ListNode Merge(ListNode list1, ListNode list2) { ...
2020-03-06
26
2048
剑指Offer第十五题:反转链表
题目描述输入一个链表,反转链表后,输出新链表的表头。 解答:思想:三个变量进行反转public class Q_15 { public ListNode ReverseList(ListNode head) { if(head==null){ return null; ...
2020-03-06
1
580
剑指Offer第十四题:链表中倒数第k个结点
题目描述输入一个链表,输出该链表中倒数第k个结点。 解答:1.放到栈中进行中转public class Q_14 { public ListNode FindKthToTail(ListNode head,int k) { Stack<ListNode> stack=new St...
2020-03-06
1
778
首页
上一页
1
2
3
4
5
6
下一页
末页