这个月每日一题有很多没做的,主要重心放在并查集和二分查找的题。 ...
分类:
其他好文 时间:
2020-06-29 16:57:53
阅读次数:
49
方法一 利用set 空间$O(n)$ 时间 \(O(n)\) 利用一个set存储映射关系, 然后直接从1 - size遍历找出第一个不在set中的元素就可以 int firstMissingPositive(vector<int>& nums) { set<int> s; for (int i = ...
分类:
其他好文 时间:
2020-06-27 19:48:19
阅读次数:
55
题目描述: 在有向图中,我们从某个节点出发和每个转向出开始,沿着有向图的边走。如果我们到达的节点是终点(即它没有连出的有向边),我们停止 现在,如果我们最后能走到终点,那么我们的起始节点是最终安全的。更具体的说,存在一个自然数k,无论选择从哪里开始行走,我们走了不 到k步必能停止在一个终点。 那些节 ...
分类:
其他好文 时间:
2020-06-27 13:11:23
阅读次数:
50
题目描述: 给你一个未排序的整数数组,请你找出其中没有出现的最小的正整数。 今日学习: 1.emmmm没有什么特别的 题解: 这道题要是不要求时空复杂度就简单得很,所以题解1是我自己胡乱写的不符合时间要求的 题解2.原地交换数组 题解3.标记数组 var firstMissingPositive = ...
分类:
其他好文 时间:
2020-06-27 12:02:17
阅读次数:
58
面试题 02.01. 移除重复节点 编写代码,移除未排序链表中的重复节点。保留最开始出现的节点。 示例: 输入:[1, 2, 3, 3, 2, 1] 输出:[1, 2, 3] 输入:[1, 1, 1, 1, 2] 输出:[1, 2] 分析: ? 链表结点移除的本质就是 将被删除结点的前驱结点连向后继 ...
分类:
其他好文 时间:
2020-06-27 11:35:16
阅读次数:
48
题目描述: 编写代码,移除未排序链表中的重复节点。保留最开始出现的节点。 进阶要求:如果不得使用临时缓冲区,该怎么解决? 今日学习: 1.链表和数组的相互转换 2.巩固链表概念 题解: 1.我的想法:链表存进Set去重,Set转成数组再转成链表 2.利用Set不重复特性,遍历链表,Set中有val就 ...
分类:
其他好文 时间:
2020-06-26 14:23:36
阅读次数:
49
题目描述: 给定一个二叉树,编写一个函数来获取这个树的最大宽度。树的宽度是所有层中的最大宽度。这个二叉树与满二叉树(full binary tree)结构相同,但一些节点为空。 每一层的宽度被定义为两个端点(该层最左和最右的非空节点,两端点间的null节点也计入长度)之间的长度。 解题原理: 宽度优 ...
分类:
其他好文 时间:
2020-06-25 15:30:17
阅读次数:
49
题目描述: 给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词。 说明: 拆分时可以重复使用字典中的单词。 你可以假设字典中没有重复的单词。 今日学习: 1.动规动规动动规 2.回溯 题解:天使,永远的神:https:/ ...
分类:
其他好文 时间:
2020-06-25 13:34:27
阅读次数:
59
题目链接 139. 单词拆分 题目分析 这个题要求我们去检查s是否能拆分成字典集合中的单词,其中字典集中可以把重复出现的单词看做一个。 我们仔细看第三个测试用例,可以发现他说的拆分就是你一个字母不能同时属于两个新单词。 这个题第一次做不会,后来看了题析才知道是DP问题,今天这个题作为每日一题, 自然 ...
分类:
其他好文 时间:
2020-06-25 11:34:10
阅读次数:
47
题目信息 时间: 2019-06-24 题目链接:Leetcode tag:栈 难易程度:简单 题目描述: 定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min、push 及 pop 的时间复杂度都是 O(1)。 示例: MinStack minStack ...
分类:
其他好文 时间:
2020-06-25 09:21:29
阅读次数:
54