1-bit and 2-bit Characters — LeetCode 717 Python Solution
EasyArray
- Problem
- #717
- Reading time
- 2 min
- Source
- leetcode.com
The problem
We have two special characters: The first character can be represented by one bit 0. The second character can be represented by two bits (10 or 11).
Example
- Input
- bits = [1,0,0]
- Output
- true
- Explanation
- The only way to decode it is two-bit character and one-bit character.
Python solution
Python
class Solution:
def isOneBitCharacter(self, bits: List[int]) -> bool:
i, n = 0, len(bits)
while i < n - 1:
i += bits[i] + 1
return i == n - 1Complexity
| Measure | Complexity |
|---|---|
| Time | O(n), where n is the length of the array \textit{bits} |
| Space | O(1) auxiliary |
Related problems
Frequently asked questions
- How hard is LeetCode 717. 1-bit and 2-bit Characters?
- LeetCode 717. 1-bit and 2-bit Characters is rated Easy on LeetCode.
- What is the time complexity of LeetCode 717. 1-bit and 2-bit Characters?
- The Python solution on this page runs in O(n), where n is the length of the array \textit{bits}.
- What is the space complexity of LeetCode 717. 1-bit and 2-bit Characters?
- The Python solution on this page uses O(1) auxiliary space.
- What topics does LeetCode 717. 1-bit and 2-bit Characters cover?
- LeetCode 717. 1-bit and 2-bit Characters is tagged Array on LeetCode.