剑指offer
cyywxy
这个作者很懒,什么都没留下…
展开
-
剑指offer——矩阵覆盖
转自:https://blog.csdn.net/qq_27225851/article/details/51694314题目:我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?思路:我们知道小矩形可以横着放也可以竖着放,那么现在用f(n)表示种类数,举个例子, 假设第一个小矩形竖着放,那么剩下的就是f(3...转载 2018-06-12 11:48:15 · 98 阅读 · 0 评论 -
[剑指Offer]最小的K个数
题目描述 输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。输入 int[] input:待搜索的数组 int k:需要找出最小的数量输出 当k大于input长度时,返回空(非null) 当k小于input长度时,返回input中最小的k个数字思路一要求数组中最小的k个数,最容易想到的就是利用冒泡排序的思想,每一...转载 2018-06-27 13:00:06 · 89 阅读 · 0 评论 -
剑指offer_数组中出现次数超过一半的数字
转自:https://blog.csdn.net/lingongheng/article/details/52735096这题不难,记录的原因是:该题我用到了HashMap来记录每个出现的数字以及出现的次数。在一些笔试面试中,总会出现 类似问题,但都会告诉你数组超大,有成千上万的数据量(网易云音乐播放排行榜、百度搜索排行榜等等),此时用HashMap来解决实在完美,在这里有点大材小用了。。。。。...转载 2018-06-27 12:04:06 · 104 阅读 · 0 评论 -
剑指Offer:顺时针打印矩阵
转自:https://blog.csdn.net/jsqfengbao/article/details/47210487/** * 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。 */ package swordForOffer; /** * @author JInShuangQi * * 2015年8月2日 */ public class E20Print...转载 2018-06-19 11:48:25 · 78 阅读 · 0 评论 -
剑指offer : 二叉搜索树与双向链表
递归中序遍历,左右子树处理不同,左边需要返回最右边的节点,右边需要返回最左边的 public static TreeNode Convert(TreeNode pRootOfTree) { if(pRootOfTree==null) return null; if(pRootOfTree.left==null&&pRootOfTre...原创 2018-06-25 20:57:30 · 81 阅读 · 0 评论 -
剑指offer:树的子结构
链接:https://www.nowcoder.com/questionTerminal/6e196c44c7004d15b1610b9afca8bd88来源:牛客网public class Solution { public static boolean HasSubtree(TreeNode root1, TreeNode root2) { boolean result =...转载 2018-06-17 12:52:15 · 87 阅读 · 0 评论 -
剑指offer-重建二叉树
转自:https://www.cnblogs.com/zywu/p/5758917.html题目描述: 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。public class Test { /* ...转载 2018-06-09 11:53:27 · 109 阅读 · 0 评论 -
剑指offer--面试题24:二叉搜索树的后序遍历序列
题目描述: 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是返回true,否则返回false。假设输入的数组的任意两个数字互不相同。解题思路: 要明确两个概念: 1. 二叉搜索树的特点,就是如果有对任何一个非空结点,假如左子树存在,那么左子树的中任意一个结点都比该根结点小,假如右子树存在,那么右子树中的任何一个节点都比该根结点大。2.二叉树的后序遍历,也就是 左→右→根 的遍...转载 2018-06-21 12:32:17 · 105 阅读 · 0 评论 -
剑指Offer面试题:二进制中1的个数
转自:https://www.cnblogs.com/edisonchou/p/4752086.html一、题目:二进制中1的个数题目:请实现一个函数,输入一个整数,输出该数二进制表示中1的个数。例如把9表示成二进制是1001,有2位是1。因此如果输入9,该函数输出2。二、可能引起死循环的解法 一个基本的思路:先判断整数二进制表示中最右边一位是不是1。接着把输入的整数右移一位,此时原来处于从右边...转载 2018-06-13 12:50:55 · 184 阅读 · 0 评论 -
剑指Offer--连续子数组的最大和
题目:输入一个整型数组,数组里有正数也有负数。数组中一个或连续的多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为O(n)。例子说明:例如输入的数组为{1, -2, 3, 10, -4, 7, 2, -5},和最大的子数组为{3, 10, -4, 7, 2}。因此输出为该子数组的和18 。解题思路:解法一:举例分析数组的规律。我们试着从头到尾逐个累加示例数组中的每个数字。初始化和为...转载 2018-06-28 10:05:51 · 112 阅读 · 0 评论