上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 19 下一页

2019年12月25日

变态跳台阶(剑指offer_10.4)

摘要: 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级...它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 解题思路 动态规划 public int JumpFloorII(int target) { int[] dp = new int[target]; Arrays.fill(d 阅读全文

posted @ 2019-12-25 14:58 Hebye 阅读(193) 评论(0) 推荐(0) 编辑

跳台阶(剑指offer_10.3)

摘要: 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级台阶总共有多少种跳法。 解题思路 当 n= 1时,只有一种跳法: 当n=2时,有两种跳法: 跳n阶台阶,可以先跳1阶台阶,再跳n-1阶台阶;或者先跳2阶台阶,再跳n-2阶跳阶。而n-1和n-2阶台阶的跳法可以看成子问题,该问 阅读全文

posted @ 2019-12-25 14:27 Hebye 阅读(161) 评论(0) 推荐(0) 编辑

矩形覆盖(剑指offer_10.2)

摘要: 题目描述 我们可以用2*1的小矩形横着或者竖着取覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 解题思路 当n为1时,只有一种覆盖方法: 当 n 为 2 时,有两种覆盖方法: 要覆盖 2*n 的大矩形,可以先覆盖 2*1 的矩形,再覆盖 2*(n-1) 的 阅读全文

posted @ 2019-12-25 14:10 Hebye 阅读(143) 评论(0) 推荐(0) 编辑

斐波那契数列(剑指offer_10.1)

摘要: 题目描述 求斐波那契数列的第n项,n <=39。 解题思路 如果使用递归求解,会重复计算一些子问题。例如,计算f(4)需要计算f(3)和f(2),计算f(3)需要计算f(2)和f(1),可以看到f(2)被重复计算了。 递归是将一个问题划分为多个子问题求解,动态规划也是如此,但是动态规划会把子问题的解 阅读全文

posted @ 2019-12-25 13:24 Hebye 阅读(265) 评论(0) 推荐(0) 编辑

2019年12月24日

cs229

摘要: 同在自学cs229。我是看完ng在coursera上的机器学习视频来的。一楼的老兄说的没错,听课之前最好还是先浏览一下材料,然后不懂的地方去结合李航的《统计学习方法》上面找答案。实战的话,《机器学习实战》对初学者很友好。Ng讲完哪个算法,去《统计》上巩固一下,然后找到《实战》上对应的章节用pytho 阅读全文

posted @ 2019-12-24 15:13 Hebye 阅读(220) 评论(0) 推荐(0) 编辑

用两个栈实现队列(剑指offer_9)

摘要: 题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操作。 解题思路 in栈用来处理入栈(push)操作,out栈用来处理出栈(pop)操作。一个元素进入in栈之后,出栈的顺序被反转。当元素要出栈时,需要先进入out栈,此时元素出栈顺序再一次被反转,因此出栈顺序就和最开始入栈顺序是相同的,先 阅读全文

posted @ 2019-12-24 14:36 Hebye 阅读(259) 评论(0) 推荐(0) 编辑

二叉树的下一个结点(剑指offer_8)

摘要: 题目描述 给定一个二叉树和其中一个结点,请找出中序遍历顺序的下一个结点并返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。 public class TreeLinkNode { int val; TreeLinkNode left = null; TreeLinkNode rig 阅读全文

posted @ 2019-12-24 14:01 Hebye 阅读(185) 评论(0) 推荐(0) 编辑

2019年12月23日

重建二叉树(剑指offer_7)

摘要: 题目描述 根据二叉树前序遍历和中序遍历的结果,重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。 解题思路 前序遍历的第一个值为根节点的值,使用这个值将中序遍历结果分为两部分,左部分为树的左子树中序遍历结果,右部分为右子树中序遍历结果。然后分别对左右子树递归地求解。 // 缓存中 阅读全文

posted @ 2019-12-23 22:27 Hebye 阅读(187) 评论(0) 推荐(0) 编辑

从头到尾打印链表(剑指offer_6)

摘要: 题目描述 从尾到头反过来打印出每个结点的值。 解题思路 1.使用递归 要逆序打印链表 1->2->3(3,2,1),可以先逆序打印链表2->3(3,2),最后再打印第一个节点1。 最后再打印第一个节点1。 而链表2->3可以看成一个新的链表,要逆序打印该链表可以继续使用求解函数,也就是在求解函数中调 阅读全文

posted @ 2019-12-23 21:30 Hebye 阅读(400) 评论(0) 推荐(0) 编辑

2019年12月22日

替换空格(剑指offer_5)

摘要: 题目描述: 将一个字符串中的空格替换成"%20"。 Input: "A B" Output: "A%20B" 解题思路: 在字符串尾部填充任意字符,使得字符串的长度等于替换之后的长度。因为一个空格要替换成三个字符(%20),所以当遍历到一个空格时,需要在尾部填充两个任意字符。 令P1指向字符串原来的 阅读全文

posted @ 2019-12-22 16:02 Hebye 阅读(158) 评论(0) 推荐(0) 编辑

上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 19 下一页

导航