- 浏览: 138622 次
文章分类
- 全部博客 (189)
- Tree (14)
- Dynamic Programming (34)
- Array (20)
- Search (1)
- Hash (12)
- Backtracking (22)
- Divide and Conque (8)
- Greedy (6)
- Stack (12)
- software (0)
- List (7)
- Math (22)
- Two pointers (16)
- String (20)
- Linux (1)
- Sliding Window (4)
- Finite State Machine (1)
- Breadth-first Search (7)
- Graph (4)
- DFS (6)
- BFS (3)
- Sort (9)
- 基础概念 (2)
- 沟通表达 (0)
- Heap (2)
- Binary Search (15)
- 小结 (1)
- Bit Manipulation (8)
- Union Find (4)
- Topological Sort (1)
- PriorityQueue (1)
- Design Pattern (1)
- Design (1)
- Iterator (1)
- Queue (1)
最新评论
-
likesky3:
看了数据结构书得知并不是迭代和递归的区别,yb君的写法的效果是 ...
Leetcode - Graph Valid Tree -
likesky3:
迭代和递归的区别吧~
Leetcode - Graph Valid Tree -
qb_2008:
还有一种find写法:int find(int p) { i ...
Leetcode - Graph Valid Tree -
qb_2008:
要看懂这些技巧的代码确实比较困难。我是这么看懂的:1. 明白这 ...
Leetcode - Single Num II -
qb_2008:
public int singleNumber2(int[] ...
Leetcode - Single Num II
[分析]
base version说几句:
数组题一定要考虑重复重复重复的问题!另外循环结束要记得最后一次更新maxLen
O(N)解法思路请移步http://blog.csdn.net/linhuanmars/article/details/22964467
base version说几句:
数组题一定要考虑重复重复重复的问题!另外循环结束要记得最后一次更新maxLen
O(N)解法思路请移步http://blog.csdn.net/linhuanmars/article/details/22964467
public class Solution { // Method 1: base version, first sort, then scan to find public int longestConsecutive1(int[] nums) { if (nums == null || nums.length == 0) return 0; Arrays.sort(nums); int len = 1, maxLen = 1; for (int i = 1; i < nums.length; i++) { if (nums[i] == nums[i - 1]) continue; if (nums[i] == nums[i - 1] + 1) { len++; } else { maxLen = Math.max(maxLen, len); len = 1; } } maxLen = Math.max(maxLen, len); return maxLen; } // Method 2: O(n), use hashset public int longestConsecutive(int[] nums) { if (nums == null || nums.length == 0) return 0; HashSet<Integer> set = new HashSet<Integer>(); for (int i = 0; i < nums.length; i++) { set.add(nums[i]); } int maxLen = 0; while (!set.isEmpty()) { Iterator<Integer> iter = set.iterator(); int item = iter.next(); set.remove(item); int len = 1; int i = item - 1; while (set.contains(i)) { set.remove(i--); len++; } i = item + 1; while (set.contains(i)) { set.remove(i++); len++; } if (len > maxLen) maxLen = len; } return maxLen; } }
发表评论
-
Leetcode - H-Index
2015-09-06 09:08 1131Given an array of citations (ea ... -
Leetcode - LRU Cache
2015-09-03 18:31 547[分析] 自己使用HashMap + LinkedList/A ... -
Leetcode - Max Points on a Line
2015-08-23 15:30 731[分析] 两条直线若包含一个公共点且斜率相同,则为同一条直线。 ... -
Leetcode - Fraction to Recurring Decimal
2015-08-23 10:05 474[分析] 处理int型整数运算时,为避免溢出,省事的做法就是内 ... -
Leetcode - Isomorphic Strings
2015-08-23 09:51 550[分析] 思路1:维护两个哈希表,char[] map, bo ... -
Leetcode - Palindrome Permutation
2015-08-22 16:24 1195[分析] 思路2让我大开眼界,顺便学习下BitSet~ [re ... -
Leetcode - Group Shifted String
2015-08-22 16:20 1731Given a string, we can "sh ... -
Leetcode - Two Sum III - Data Structure Design
2015-08-21 10:30 701[分析] find的version1 版本注意num2Occu ... -
Leetcode - Add Binary
2015-08-21 09:28 477[分析] 从低位往高位逐位相加,就是这么一个简单的题却花了我一 ... -
Leetcode - First Missing Positive
2015-08-20 07:45 661[分析] 将各个正数放入相应下标处,使之满足nums[nums ... -
Leetcode - Set Matrix Zeros
2015-08-19 20:55 561Given a m x n matrix, if an ele ... -
Leetcode - Rotate Image
2015-08-19 19:51 503[分析] 自己的思路:从外到内一圈圈顺时针旋转90度,坐标映射 ... -
Missing Ranges
2015-08-19 09:48 518[分析] 此题若不考虑极大值极小值相关的corner case ... -
Leetcode - 3Sum Smaller
2015-08-18 22:12 1492Given an array of n integers nu ... -
Leetcode - Spiral Matrix II
2015-08-18 19:49 504Given an integer n, generate a ... -
Leetcode - Spiral Matrix
2015-08-18 09:50 434Given a matrix of m x n element ... -
Leetcode - Contains Duplicate II
2015-08-18 07:57 566Given an array of integers and ... -
Leetcode - Shortest Word Distance II
2015-08-18 07:25 1371This is a follow up of Shortest ... -
Leetcode - Shortest Word Distance III
2015-08-17 22:05 1674This is a follow up of Shortest ... -
Leetcode - Shortest Word Distance
2015-08-17 22:01 928Given a list of words and two w ...
相关推荐
javascript js_leetcode题解之128-longest-consecutive-sequence.js
python python_leetcode题解之128_Longest_Consecutive_Sequence
- **2.1.6 Longest Consecutive Sequence** - 找出数组中最长的连续子序列。 - 实现思路:可以使用哈希表存储每个元素及其连续状态,然后遍历数组找到最长的连续序列。 - **2.1.7 Two Sum** - 寻找数组中两个数...
leetcode 分类 Leetcode代码题解 随缘刷题,选择性更新题解 LeetCode 94 144 145 ...longest-consecutive-sequence 最长连续序列: Leetcode 155 Min Stack 最小栈: LeetCode 773 滑动谜题: ......
5. **滑动窗口最大值/最小值**:例如“数组中的最长连续序列”(Longest Consecutive Sequence),哈希表可以帮助我们快速查询元素及其相邻元素的状态,从而找到最长连续序列。 6. **统计问题**:如“数组中出现...
2. "最长连续序列"(Longest Consecutive Sequence):利用HashSet存储数值并更新最长连续序列长度。 这些案例展示了如何将数据结构和算法应用到实际问题中,帮助我们更好地理解和实践Java在LeetCode中的解题策略。...
longest-consecutive-sequence max-area-of-island next-greater-element-ii serialize-and-deserialize-binary-tree subarray-sum-equals-k binary-tree-preorder-traversal n-queens-ii populating-next-right-...
比如,“最长连续序列”(Longest Consecutive Sequence)要求找到给定无序整数数组中最长的连续序列长度,这涉及到哈希表和递归/迭代的巧妙结合。 LeetCode平台的开源特性意味着用户可以查看其他人的解决方案,...
如最长连续序列(Longest Consecutive Sequence)、背包问题(Knapsack)等。 2. 分治策略:分治法将大问题分解为相似的子问题,分别求解后再合并。如快速排序、归并排序、求阶乘(Fibonacci数列)等。 3. 回溯法...
# [LeetCode](https://leetcode.com/problemset/algorithms/) ![Language](https://img.shields.io/badge/language-Python%20%2F%20C++%2011-orange.svg) [![License]...
例如,"最长连续序列"(Longest Consecutive Sequence)题目的解决方案通常会用到哈希表来存储数组元素及其出现的次数,再结合深度优先搜索或广度优先搜索策略找出最长的连续序列。 3. 优化技巧:在解决LeetCode...
4. **滑动窗口**:在数组中使用滑动窗口进行统计,如“最长连续序列”(Longest Consecutive Sequence)。 5. **数组分割**:根据特定条件将数组分割成多个子数组,如“分割数组的最大和”(MaxChunks ToSorted)。...
如“最长连续序列”(Longest Consecutive Sequence)问题,可以使用动态规划在O(n)时间复杂度内找到答案。 9. **分治策略**:将大问题分解为小问题,逐个解决后再合并结果。如“归并排序”(Merge Sort),通过...
此外,"Leetcode-main"可能还包含了其他挑战,如“最长连续序列”(Longest Consecutive Sequence)来演示如何使用集合进行有效的状态追踪,或者“最大子数组和”(Maximum Subarray)来展示动态规划的应用。每个问题的...
* Longest Consecutive Sequence Java:该题目要求找到最长的连续序列,实现方法使用了哈希表和迭代算法。 * Search a 2D Matrix:该题目要求在二维矩阵中查找元素,实现方法使用了二分查找算法。 * Rotate Image:...
Consecutive Sequence 7 Two Sum Hash,夹逼均可 8 3Sum Hash法转换2sum 9 3Sum Closest Sort +夹逼法 10 4Sum Sort +夹逼法 11 Remove Element 12 Next Permutation 公式 13 Permutation Sequence 公式 14 Valid ...
5. **动态规划**:如“最长连续序列”(Longest Consecutive Sequence),要求找到一个无序整数数组中最长的连续子序列。 6. **回溯法**:如“全排列”(Permutations),要求列出所有可能的数组排列。 7. **堆和队列*...
LeetCode的第128题,名为"Longest Consecutive Sequence",要求找到给定无序整数数组中,最长的连续整数序列的长度。例如,对于输入数组 [100, 4, 200, 1, 3, 2],最长连续序列是 [1, 2, 3, 4],其长度为4。 首先,...
leetcode正方体收藏TakeUforward-SDE_180 要了解整个列表和其他内容,如项目、简历、如何进行面试……观看整个视频: 在以下位置找到展示位置系列: ...Consecutive Sequence Longest Subarray with 0 sum 给定
2. **2.1.6 Longest Consecutive Sequence**:给定一个未排序的整数数组,找出其中最长连续序列的长度。 3. **2.1.7 Two Sum**:给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个...