01.01. Is Unique
Description
Implement an algorithm to determine if a string has all unique characters. What if you cannot use additional data structures?
Example 1:
Input: = "leetcode" Output: false
Example 2:
Input: s = "abc" Output: true
Note:
0 <= len(s) <= 100
Solutions
Solution 1: Bit Manipulation
Based on the examples, we can assume that the string only contains lowercase letters (which is confirmed by actual verification).
Therefore, we can use each bit of a $32$-bit integer mask
to represent whether each character in the string has appeared.
The time complexity is $O(n)$, where $n$ is the length of the string. The space complexity is $O(1)$.
1 2 3 4 5 6 7 8 9 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
1 2 3 4 5 6 7 8 9 10 11 |
|
1 2 3 4 5 6 7 8 9 10 11 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|