力扣217. 存在重复元素;力扣925. 长按键入

力扣217. 存在重复元素;力扣925. 长按键入_第1张图片

class Solution {
public:
    bool containsDuplicate(vector<int>& nums) {
	set<int> sset;
	for (int i = 0; i < nums.size(); ++i)
	{
		auto it = sset.insert(nums[i]);
		if (it.second == false)
			return true;
	}
	return false;
}
};

力扣217. 存在重复元素;力扣925. 长按键入_第2张图片
这道题之前也遇见过,这次只要使用的是计数的方式来进行解决的

class Solution {
public:
	bool isLongPressedName(string name, string typed) {
		int i = 0;
		int j = 0;
		int count1;
		int count2;
		int size1 = name.size();
		int size2 = typed.size();
		while (i < size1)
		{
			if (name[i] != typed[j])
				return false;
			count1 = count2 = 1;
			while (i < size1 && name[i] == name[i + 1])
			{
				i++;
				count1++;
			}
			i++;
			while (j < size2 && name[i - 1] == typed[j] && typed[j] == typed[j + 1])
			{
				j++;
				count2++;
			}
			j++;
			if (count2 < count1)
				return false;
		}
		return true;
	}
};

你可能感兴趣的:(LeetCode)