给出两个字符串a和b,判断字符串a是否包含字符串b

题目一

给出两个字符串a和b,例如 a=”ABJKI“, b=“JK”,则 a 包含 b 。

下面的方法很巧妙啊。

《给出两个字符串a和b,判断字符串a是否包含字符串b》

题目二:

实现一个算法来判断一个字符串中的字符是否唯一(即没有重复).

思想就是延续上一题的思想,具体代码如下:

bool isUnique(string& str)
{
	int a[8] = {0};
	int len = str.length();
	for (int i = 0; i < len; i++)
	{
		int v = (int)str[i];
		int idx = v / 32, shift = v % 32;
		int b = a[idx] & (1 << shift);
		if (b != 0)
			return false;
		a[idx] |= (1 << shift);
	}
	return true;
}

点赞