04 2021 档案

摘要:解题思路: 1、先判断有没有环 2、如果有环在判断入口结点,如果没有环,直接返回None 判断有环没环的方法是: 定义两个指针,一个快指针,一次走两个长度,一个慢指针,一次走一个长度,当快指针与慢指针重合时,说明有环。 找入口结点的思路:让慢指针停留在两个指针相遇的地方,快指针回到pHead,当快指 阅读全文
posted @ 2021-04-08 08:49 努力中的小菜鸟 阅读(67) 评论(0) 推荐(0)
摘要:解题思路:看长的链表比短的链表长了多少(假设有k个长度),然后让长的链表先走k个长度,直到两个链表出现第一次相同时即为第一个公共点。 # -*- coding:utf-8 -*- # class ListNode: # def __init__(self, x): # self.val = x # 阅读全文
posted @ 2021-04-02 16:03 努力中的小菜鸟 阅读(82) 评论(0) 推荐(0)
摘要:解题思路: 压入的过程中是有弹出的 # -*- coding:utf-8 -*- class Solution: def IsPopOrder(self, pushV, popV): #压入过程中是有弹出的 #首先需要有一个栈,列表 #按照pushV的方式压入栈 #弹出的时候是需要循环判断是否需要弹 阅读全文
posted @ 2021-04-02 09:11 努力中的小菜鸟 阅读(74) 评论(0) 推荐(0)
摘要:解题思路: 栈是先进后出,队列是先进先出 # -*- coding:utf-8 -*- class Solution: # 初始化栈为空列表 def __init__(self): self.acceptStack=[] self.outputStack=[] def push(self, node 阅读全文
posted @ 2021-04-02 08:58 努力中的小菜鸟 阅读(63) 评论(0) 推荐(0)
摘要:解题思路:链表,每次都放在最前面的位置 # -*- coding:utf-8 -*- # class ListNode: # def __init__(self, x): # self.val = x # self.next = None class Solution: # 返回从尾部到头部的列表值 阅读全文
posted @ 2021-04-02 08:42 努力中的小菜鸟 阅读(52) 评论(0) 推荐(0)
摘要:解题思路: 要注意题目里保持相对位置,意思就是如果原数组是[1,2,5,6,3,4] 调整后数组为:[1,5,3,2,6,4] # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param array int整型一维数组 # @return int整型一 阅读全文
posted @ 2021-04-02 08:29 努力中的小菜鸟 阅读(62) 评论(0) 推荐(0)
摘要:解题思路: 用二分查找,找中间的那个数字和左右两边的数字进行比较。 右边的值大于中值,说明最小值在左边# -*- coding:utf-8 -*- class Solution: def minNumberInRotateArray(self, rotateArray): if not rotate 阅读全文
posted @ 2021-04-01 16:55 努力中的小菜鸟 阅读(103) 评论(0) 推荐(0)
摘要:解题思路: 1、找规律 n=1 f(n)=1 n=2 f(n)=2 n=3 f(n)=4 n=4 f(n)=8 ... 2^(n-1) 2、递归 f(n)=f(n-1)+f(n-2)+.....f(0) f(n-1)=f(n-2)+f(n-3)+....+f(0) f(n)=2f(n-1) # -* 阅读全文
posted @ 2021-04-01 16:12 努力中的小菜鸟 阅读(44) 评论(0) 推荐(0)
摘要:解题思路:通过找规律,发现其实这也是斐波那契数列 # -*- coding:utf-8 -*- class Solution: def jumpFloor(self, number): #n=1 f(n)=1 #n=2,11,2, f(n)=2 #n=3,111,12,21 f(n)=3 #n=4, 阅读全文
posted @ 2021-04-01 15:58 努力中的小菜鸟 阅读(75) 评论(0) 推荐(0)
摘要:解题思路: 仔细读题目发现,二维数组的每一行与每一列都是一个递增的关系。 假设二维数组:[[1,2,3,4], [5,6,7,8], [9,10,11,12], [13,14,15,16]] 如果target小于4,说明target一定不在4这一列;如果target大于4,说明target一定不在4 阅读全文
posted @ 2021-04-01 15:43 努力中的小菜鸟 阅读(70) 评论(0) 推荐(0)
摘要::解题思路: 通过找规律,写出了递归公式: 即f(n)=f(n-1)+f(n-2) 问题:时间复杂度高 通过画图发现:我们可以找两个变量,其中一个变量用来保存计算过程中始终最大的那个数,另外一个变量用来保存计算过程中始终最小的那个数。 阅读全文
posted @ 2021-04-01 15:33 努力中的小菜鸟 阅读(97) 评论(0) 推荐(0)