mediumArraysPattern: Linear Scan

Consecutive Subsequence Validator Solution

Problem Statement

You are given a list of integers `asteroidSizes` and a target list `targetSequence`. Determine if the `targetSequence` appears in the same order and is consecutive within the `asteroidSizes` list.

Examples

Example 1:
Input:{"asteroidSizes":[1,2,3,4,5],"targetSequence":[2,3,4]}
Output:true
Explanation: The target sequence appears consecutively in the asteroid list
Example 2:
Input:{"asteroidSizes":[1,3,5,2,4],"targetSequence":[2,3,4]}
Output:false
Explanation: The target sequence does not appear consecutively in the asteroid list

Constraints

  • 1 <= asteroidSizes.length <= 10^5
  • 1 <= targetSequence.length <= 100
Time: O(n) Space: O(1)
The optimal approach involves using a single pass through the asteroidSizes array and iterating over the targetSequence array to verify consecutive matches, resulting in a time complexity of O(n). This approach ensures efficiency even for large inputs. It utilizes a two-pointer technique to track progress.

Run, Test & Submit Code

Ready to practice this challenge? Launch our interactive compilation environment with compiler validation.

Solve on Interactive Workspace

Tested Solutions

No solution code is currently loaded.
Complete this code in the workspace editor.