收藏:①极市开发DeepLearning ②Git使用

随笔分类 -  剑指offer

剑指offer上的题目
摘要:1 __author__ = "WSX" 2 3 class ListNode: 4 def __init__(self, val): 5 self.val = val 6 self.next = None 7 8 """3\ 19\ 37\ 38 \ 44\ 45\ """ 9 10 """ 11 1 镜像二... 阅读全文
posted @ 2019-08-21 22:04 WSX_1994 阅读(166) 评论(0) 推荐(0)
摘要:今天主要写了一下offer 1-41题,余下的稍后整理 1 """ 2 1 镜像二叉树: 递归 3 """ 4 def mirror(root): 5 if not root: 6 return None 7 mirror(root.left) 8 mirror(root.right) 9 root.left,... 阅读全文
posted @ 2019-07-17 21:21 WSX_1994 阅读(368) 评论(0) 推荐(0)
摘要:题目描述 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 思路: 本题是利用递归思想,判断根节点的左子树元素是否小于根节点,右子树元素是否大于根节点。重点在于对左右子树的划分(因为传入的是个数组) 1.从第0 阅读全文
posted @ 2019-05-07 15:08 WSX_1994 阅读(151) 评论(0) 推荐(0)
摘要:题目 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是 阅读全文
posted @ 2019-04-30 21:59 WSX_1994 阅读(98) 评论(0) 推荐(0)
摘要:题目描述 输入一个链表,输出该链表中倒数第k个结点。 思想: 双指针法(快的走k 步后 一起走。) 或者使用空间【】 存到列表中然后切片 1 class Solution: 2 def FindKthToTail(self, head, k): 3 # write code here 4 if k 阅读全文
posted @ 2019-04-24 16:14 WSX_1994 阅读(106) 评论(0) 推荐(0)
摘要:题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 解释: 这个就是斐波那契数列的一个应用 因为当新增加的矩形横着放 就相当于 F【n-2】 当竖着放相当于 F【n-1】 1 # -*- coding:utf-8 阅读全文
posted @ 2019-04-22 20:14 WSX_1994 阅读(109) 评论(0) 推荐(0)
摘要:题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 1 class Solution: 2 def jumpFloorII(self, number): 3 # write code here 4 if number == 1: 阅读全文
posted @ 2019-04-22 19:56 WSX_1994 阅读(131) 评论(0) 推荐(0)
摘要:题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 1 class Solution: 2 def jumpFloor(self, number): 3 # write code here 4 if number == 1 阅读全文
posted @ 2019-04-22 19:45 WSX_1994 阅读(88) 评论(0) 推荐(0)
摘要:题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。 n<=39 1 def Fibonacci( n): 2 # write code here 3 if n == 0: 4 return 0 5 if n == 1: 6 return 阅读全文
posted @ 2019-04-22 19:35 WSX_1994 阅读(122) 评论(0) 推荐(0)
摘要:题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 1 clas 阅读全文
posted @ 2019-04-22 19:21 WSX_1994 阅读(111) 评论(0) 推荐(0)
摘要:题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 1 class Solution: 2 def __init__(self): 3 self.temp = [] 4 self.result = [] 5 6 def push(self, node): 阅读全文
posted @ 2019-04-22 19:17 WSX_1994 阅读(107) 评论(0) 推荐(0)
摘要:题目描述 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。 1 __author__ = "WSX" 2 class Solution: 3 # 返回从尾部到头部的列表值序列,例如[1,2,3] 4 def printListFromTailToHead(self, listNode 阅读全文
posted @ 2019-04-21 22:11 WSX_1994 阅读(95) 评论(0) 推荐(0)
摘要:描述: 请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 阅读全文
posted @ 2019-04-21 22:01 WSX_1994 阅读(104) 评论(0) 推荐(0)
摘要:题目描述: 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。 请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 思路:将target与二维数组array第一行最后一个数做比较,如果target大于该行数, 阅读全文
posted @ 2019-04-21 21:55 WSX_1994 阅读(110) 评论(0) 推荐(0)