![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
剑指offer
是小狐狸呀~~
,
展开
-
剑指offer62-约瑟夫环
解法一:构造环型链表 时间复杂度o(nm),空间复杂度o(n) class Node(object): def __init__(self,x): self.val=x self.next=None class Solution: def lastRemaining(self, n: int, m: int) -> int: head=Node(0) tmp=head for i in range(1,n原创 2020-12-29 21:33:24 · 101 阅读 · 1 评论 -
栈,队列
剑指offer59-Ⅰ 滑动窗口的最大值 class Solution: def maxSlidingWindow(self, nums: List[int], k: int) -> List[int]: # deque保存当前最大值,和下一个可能的最大值。未形成窗口和形成窗口分别放在两个循环,时间复杂度o(n)),空间复杂度o(1) if not nums: return [] deque=collections.deq原创 2020-11-26 19:48:18 · 83 阅读 · 0 评论 -
动态规划题总结(??找到无穷处理初始值的题)
剑指offer10-青蛙跳台阶(与斐波拉契数列相同) class Solution: def numWays(self, n: int) -> int: l=[1 for _ in range(n+1)] for i in range(2,n+1): l[i]=l[i-1]+l[i-2] return l[n]% 1000000007# 取模100000007为了确保结果在32位范围内 ...原创 2020-11-24 21:48:41 · 142 阅读 · 0 评论 -
刷题中的滑动窗口总结(定期更新)
据说共有10道左右,找出来 剑指 Offer 57 和为s的连续正数序列 剑指 Offer 48. 最长不含重复字符的子字符串原创 2020-07-21 00:33:50 · 99 阅读 · 0 评论 -
刷题中的链表总结(持续跟新)
反转链表 注意: 链表问题伴随着大量指针操作。面试时不要急着写代码,仔细分析设计不容易出错。 由于链表是不连续存储的。当调节节点i的next指针时,需要(这里用tmp)来保存后节点的位置 常见错误: ① 输入链表头指针为null(特殊输入测试)或只有一个节点(一个功能测试)时,程序崩溃 ②反转链表出现断裂 ③返回的头节点不是原始链表的尾节点 解决方法: 提前想好测试用例,心中默默运行代码进行单元测试,再交给面试官 循环解法 # # class ListNode: # def __init__(s原创 2020-07-04 01:27:02 · 265 阅读 · 0 评论 -
刷题中的贪心算法总结(持续跟新)
0702看了左神介绍贪心算法一个视频,用拼接成字典序最低字符串这道题(leetcode上要会员才能解锁)来介绍。提出一种新的比较规则见下面类似的题。 * 剑指32 把数组排成最小的数 题目描述 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。 解题思路: 先将整型数组转换成String数组,然后将String数组排序,最后将排好序的字符串数组拼接出来。关键就是制定排序规则。 排原创 2020-07-02 23:46:32 · 274 阅读 · 0 评论 -
刷题中的二分查找,双指针总结(持续跟新)
二分查找 # -*- coding:utf-8 -*- class Solution: def GetNumberOfK(self, data, k): if not data or data[0] > k or data[-1] < k: return 0 low = 0 high = len(data) - 1 cnt = 0 while low <= high:原创 2020-07-02 20:06:49 · 208 阅读 · 0 评论 -
刷题中巧用逻辑运算总结(不定期跟新)
如题咯原创 2020-07-06 22:17:29 · 111 阅读 · 0 评论 -
刷题中的HashMap,dict总结(持续跟新)
HashMap:一种数据结构 dict:将键映射到值的一种映射类型 注意: key唯一 key是可hash的数据类型(int,str,tuple,bool),注意不可hash的数据类型有:list, dict,set 剑指:数组中只出现一次的数字原创 2020-07-02 17:23:41 · 295 阅读 · 0 评论