![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
随笔
OYNanaHlb
这个作者很懒,什么都没留下…
展开
-
给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1
class Solution { public: int firstUniqChar(string s) { int hash[26]={0}; if(s.empty()){ return -1;} if(s.size()==1){ return 0;} for(int i=0;i<s.size();i++) { hash[s[i]-'a']++;/原创 2020-08-01 14:36:24 · 852 阅读 · 0 评论 -
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。
class Solution { public: vector<int> twoSum(vector<int>& nums, int target) { map<int, int> numsMap; for (int i = 0; i < nums.size(); i++) { numsMap.insert(pair<int, int>(nums[i], i)); } vector<int>res; for转载 2020-07-30 13:53:25 · 279 阅读 · 0 评论 -
给定两个数组,编写一个函数来计算它们的交集以及map相应记录
给定两个数组,编写一个函数来计算它们的交集。 使用比较笨的方法 将二者存入map,记录每一个数出现的次数 而后进行查找比对 并将相应的答案存入vector class Solution { public: int min(int a,int b){ if(a>b){ return b; } else{ return a; } } vector<int> i原创 2020-07-29 17:23:55 · 447 阅读 · 0 评论 -
c++只出现一次的数字
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? class Solution { public: int value=0; int singleNumber(vector<int>& nums) { for(int i=0;i<nums.size();i++){ value^=nums[i];原创 2020-07-28 18:48:26 · 443 阅读 · 0 评论 -
存在重复元素的判定
给定一个整数数组,判断是否存在重复元素。 如果任意一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。 LeetCode的题目 可以考虑使用字典来进行判断 将数组内元素存入字典,若有相同的元素则无法存入字典。 最后判断对比字典和数组的长度 相同则无重复,反之重复。 class Solution { public: bool containsDuplicate(vector<int>& nums) { map原创 2020-07-28 18:24:10 · 2080 阅读 · 0 评论 -
数组重复元素的删除
数组重复元素的删除 class Solution { public: int removeDuplicates(vector<int>& nums) { int temp=-1; int m=nums.size(); temp=m; for(int i=0;i<m;i++){ for(int j=i+1;j<m;j++){ if(nums[i]==n原创 2020-07-26 22:03:55 · 228 阅读 · 0 评论