【LeetCode】717. 1-bit and 2-bit Characters(一位数和两位数)
题目链接:https://leetcode.com/problems/1-bit-and-2-bit-characters/description/
难度:Easy
题目描述:
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
).
Now given a string represented by several bits. Return whether the last character must be a one-bit character or not. The given string will always end with a zero.
Example 1:
Input: bits = [1, 0, 0] Output: True Explanation: The only way to decode it is two-bit character and one-bit character. So the last character is one-bit character.
Example 2:
Input: bits = [1, 1, 1, 0] Output: False Explanation: The only way to decode it is two-bit character and two-bit character. So the last character is NOT one-bit character.
Note:
1 <= len(bits) <= 1000
.
bits[i]
is always
0
or
1
.
解释:判断数组最后一部分,如[1,1,0]一位,[1,0]两位。
思路:顺序遍历数组,遇到0,i+1,记为1;遇到1,i+2,记为2。判断最后一个记为几就行了。
class Solution {
public boolean isOneBitCharacter(int[] bits) {
int res=0;
for(int i=0;i<bits.length;i++)
{
if(bits[i]==0)
res=1;
else{
i++;
res=2;
}
}
if(res==2)
return false;
else return true;
}
}
日期:2018/2/24-22:02