在一个农场里,有n头牛,每头牛都有一个唯一的标签编号。农场主人想找出所有牛的标签中,存在的最长连续标签序列的长度。 你需要返回一个整数,表示连续标签的最长序列的长度。 注意:请不要使用排序,且在 O(n) 时间复杂度内完成此题。
区块链毕设网qklbishe.com为您提供问题的解答
在一个农场里,有n头牛,每头牛都有一个唯一的标签编号。农场主人想找出所有牛的标签中,存在的最长连续标签序列的长度。
你需要返回一个整数,表示连续标签的最长序列的长度。
注意:请不要使用排序,且在 O(n) 时间复杂度内完成此题。
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param tag int整型一维数组 * @return int整型 */ public PriorityQueue<Integer> pq=new PriorityQueue(); public int longestConsecutive (int[] tag) { if(tag.length<2) return tag.length; for(int x:tag) pq.add(x); int max=1,pre=pq.poll(),cnt=1; while(!pq.isEmpty()){ int x=pq.poll(); if(x==pre+1) cnt++; else cnt=1; if(cnt>max) max=cnt; pre=x; } return max; } }
49:55
以上就是关于问题在一个农场里,有n头牛,每头牛都有一个唯一的标签编号。农场主人想找出所有牛的标签中,存在的最长连续标签序列的长度。 你需要返回一个整数,表示连续标签的最长序列的长度。 注意:请不要使用排序,且在 O(n) 时间复杂度内完成此题。的答案
欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。
区块链NFT链游项目方科学家脚本开发培训