[leetcode] 1 比特与 2 比特字符-水题

题目链接
在这里插入图片描述
指针 i i i 0 0 0开始往后走,如果当前位置的值为 0 0 0,则一定是第一种情况,指针向右移一位
如果说当前值为 1 1 1,则一定是第二种情况,指针向右移动两位,如果说最终 i = = b i t s . s i z e ( ) − 1 i == bits.size() - 1 i==bits.size()1
那么说就是一个合法的

class Solution {
public:
    bool isOneBitCharacter(vector<int>& bits) {
        int i;
        for(i = 0;i < bits.size() - 1;) {
            i += bits[i] + 1;
        }
        return (i == bits.size() - 1);
    }
};
posted @ 2022-04-26 21:36  PushyTao  阅读(28)  评论(0)    收藏  举报