请问聊城网站建设,邢台区域最新调整,seo搜索引擎优化知乎,企业 手机网站这道题我们可以判断每个数current_num是否存在current_num-1#xff0c;如果存在说明他不是开头数字#xff0c;如果不存在说明他是开头数字#xff0c;接下来再用while(current_num1)遍历是否存在他后面的一个数字#xff0c;如果存在#xff0c;那么连续长度1.
class S… 这道题我们可以判断每个数current_num是否存在current_num-1如果存在说明他不是开头数字如果不存在说明他是开头数字接下来再用while(current_num1)遍历是否存在他后面的一个数字如果存在那么连续长度1.
class Solution {public int longestConsecutive(int[] nums) {SetInteger num_set new HashSet();//将数组里面的数放入set集合这样就没有重复for (int num : nums) {num_set.add(num);}int longestStreak0;//遍历set集合判断当前数字是否有current_num-1for (Integer num : num_set) {if (!num_set.contains(num-1)){int current_num num;int current_streak1;while (num_set.contains(current_num1)){current_numcurrent_num1;current_streak;}longestStreak Math.max(longestStreak, current_streak);}}return longestStreak;}
}