在一个大型牧场中,奶牛们排成一列。每头奶牛在队列中都有一个固定的编号。现在牧场主希望找出队列中最长的连续递增奶牛编号。请你设计一个 O(n) 时间复杂度的算法,找出最长的连续递增奶牛编号的长度。
示例1
输入
[1, 2, 5, 6, 3, 4],6
输出
4
示例2
输入
[0, 1, 2, 4, 5, 6, 7, 8, 9],9
输出
9
备注:
0 -10^9
加载中...
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param ids int整型一维数组 * @param n int整型 * @return int整型 */ public int longestConsecutive (int[] ids, int n) { // write code here } }
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param ids int整型vector * @param n int整型 * @return int整型 */ int longestConsecutive(vector
& ids, int n) { // write code here } };
#coding:utf-8 # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param ids int整型一维数组 # @param n int整型 # @return int整型 # class Solution: def longestConsecutive(self , ids , n ): # write code here
using System; using System.Collections.Generic; class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param ids int整型一维数组 * @param n int整型 * @return int整型 */ public int longestConsecutive (List
ids, int n) { // write code here } }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param ids int整型一维数组 * @param n int整型 * @return int整型 */ function longestConsecutive( ids , n ) { // write code here } module.exports = { longestConsecutive : longestConsecutive };
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param ids int整型一维数组 # @param n int整型 # @return int整型 # class Solution: def longestConsecutive(self , ids: List[int], n: int) -> int: # write code here
package main import "fmt" /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param ids int整型一维数组 * @param n int整型 * @return int整型 */ func longestConsecutive( ids []int , n int ) int { // write code here }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param ids int整型一维数组 * @param idsLen int ids数组长度 * @param n int整型 * @return int整型 */ int longestConsecutive(int* ids, int idsLen, int n ) { // write code here }
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param ids int整型一维数组 # @param n int整型 # @return int整型 # class Solution def longestConsecutive(ids, n) # write code here end end
object Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param ids int整型一维数组 * @param n int整型 * @return int整型 */ def longestConsecutive(ids: Array[Int],n: Int): Int = { // write code here } }
object Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param ids int整型一维数组 * @param n int整型 * @return int整型 */ fun longestConsecutive(ids: IntArray,n: Int): Int { // write code here } }
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param ids int整型一维数组 * @param n int整型 * @return int整型 */ public int longestConsecutive (int[] ids, int n) { // write code here } }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param ids int整型一维数组 * @param n int整型 * @return int整型 */ export function longestConsecutive(ids: number[], n: number): number { // write code here }
public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param ids int整型一维数组 * @param n int整型 * @return int整型 */ func longestConsecutive ( _ ids: [Int], _ n: Int) -> Int { // write code here } }
struct Solution{ } impl Solution { fn new() -> Self { Solution{} } /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param ids int整型一维数组 * @param n int整型 * @return int整型 */ pub fn longestConsecutive(&self, ids: Vec
, n: i32) -> i32 { // write code here } }
[1, 2, 5, 6, 3, 4],6
4
[0, 1, 2, 4, 5, 6, 7, 8, 9],9
9