Longest Increasing Subsequence LeetCode solution in Rust

1
impl Solution {
2
pub fn length_of_lis(nums: Vec<i32>) -> i32 {
3
let mut v: Vec<i32> = vec![*nums.first().unwrap()];
4
for n in nums.iter() {
5
if n > v.last().unwrap() {
6
v.push(*n);
7
} else {
8
let pos = v.binary_search(n);
9
if let Err(pos) = pos {
10
if v[pos] > *n {
11
v[pos] = *n;
12
}
13
}
14
}
15
}
16
v.len() as i32
17
}
18
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0