题目描述 输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前) 1 import copy 2 class Solution: 3 # 返回二维列表, ...
分类:
编程语言 时间:
2019-12-15 10:20:28
阅读次数:
75
题目描述 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下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. 1 # -*- c ...
分类:
编程语言 时间:
2019-12-09 21:52:43
阅读次数:
147
题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 1 class Solution: 2 # 返回合并后列表 3 def Merge(self, pHead1, pHead2): 4 # write code here 5 dummy =p = ...
分类:
编程语言 时间:
2019-12-08 10:49:44
阅读次数:
96
题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 # -*- coding:utf-8 -*- # class ListNode: # def __init__(self, x): # self.val = x # self.next = Non ...
分类:
编程语言 时间:
2019-12-07 12:21:47
阅读次数:
104
题目描述 定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。 # -*- coding:utf-8 -*- class Solution: def __init__(self): self.stack = [] self.minstack = [] ...
分类:
编程语言 时间:
2019-12-06 11:51:33
阅读次数:
67
题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 # -*- coding:utf-8 -*- class Solution: def __init__(self): self.stack1 = [] self.stack2 = [] def push( ...
分类:
编程语言 时间:
2019-12-06 11:32:52
阅读次数:
99
题目描述 给你一根长度为n的绳子,请把绳子剪成m段(m、n都是整数,n>1并且m>1),每段绳子的长度记为k[0],k[1],...,k[m]。请问k[0]xk[1]x...xk[m]可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。 ...
分类:
编程语言 时间:
2019-11-18 15:37:30
阅读次数:
76
题目描述 地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38),因为3+ ...
分类:
编程语言 时间:
2019-11-16 21:18:45
阅读次数:
79
题目描述 输入一颗二叉树的根节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前) 思路 回溯法 ,定义一个当前路径和所有路径。 代码 # -*- coding:utf- ...
分类:
编程语言 时间:
2019-11-04 17:51:24
阅读次数:
89
题目描述 输入一个链表,反转链表后,输出新链表的表头。 思路 定义三个指针,pHead, cur,forward 反转的时候,cur.next指向pHead,然后三个指针依次向后移动,具体过程看代码。 代码 # -*- coding:utf-8 -*- # class ListNode: # def ...
分类:
编程语言 时间:
2019-11-04 12:00:05
阅读次数:
71