- 博客(7)
- 资源 (1)
- 收藏
- 关注
原创 LeetCode841.钥匙与房间
> 有 N 个房间,开始时你位于 0 号房间。每个房间有不同的号码:0,1,2,…,N-1,并且房间里可能有一些钥匙能使你进入下一个房间。在形式上,对于每个房间 i 都有一个钥匙列表 rooms[i],每个钥匙 rooms[i][j] 由 [0,1,…,N-1] 中的一个整数表示,其中 N = rooms.length。 钥匙 rooms[i][j] = v 可以打开编号为 v 的房间。最初,除 0 号房间外的其余所有房间都被锁住。你可以自由地在房间之间来回走动。如果能进入每个房间返回 tru
2020-08-31 13:16:01 153
原创 给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -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 861
转载 给定一个整数数组 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 289
原创 给定两个数组,编写一个函数来计算它们的交集以及map相应记录
给定两个数组,编写一个函数来计算它们的交集。使用比较笨的方法将二者存入map,记录每一个数出现的次数而后进行查找比对并将相应的答案存入vectorclass 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 468
原创 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 475
原创 存在重复元素的判定
给定一个整数数组,判断是否存在重复元素。如果任意一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。LeetCode的题目可以考虑使用字典来进行判断将数组内元素存入字典,若有相同的元素则无法存入字典。最后判断对比字典和数组的长度相同则无重复,反之重复。class Solution {public: bool containsDuplicate(vector<int>& nums) { map
2020-07-28 18:24:10 2110
原创 数组重复元素的删除
数组重复元素的删除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 238
工资管理系统.rar
2020-07-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人