c++:vector的相关oj题(136. 只出现一次的数字、118. 杨辉三角、26. 删除有序数组中的重复项、JZ39 数组中出现次数超过一半的数字)
温馨提示:这篇文章已超过387天没有更新,请注意相关的内容是否还可用!
文章目录
- 1. 136. 只出现一次的数字
- 题目详情
- 代码(直接来异或)
- 思路
- 2. 118. 杨辉三角
- 题目详情
- 代码1
- 思路
- 代码2
- 思路2
- 3. 26. 删除有序数组中的重复项
- 题目详情
- 代码
- 思路
- 4. JZ39 数组中出现次数超过一半的数字
- 题目详情
- 代码1(暴力)
- 思路1
- 代码2(Boyer-Moore 投票算法)
- 思路2
1. 136. 只出现一次的数字
传送门
题目详情
代码(直接来异或)
class Solution { public: int singleNumber(vector& nums) { //根据:某个元素只出现一次 直接来异或 int ret=0; for(auto e:nums) { ret=ret^e; } return ret; } };思路
- 异或运算的性质:异或运算(^)具有以下性质**(相同为0,相异为1)**
2. 118. 杨辉三角
传送门
题目详情
代码1
class Solution { public: vector generate(int numRows) { vector vv; vv.resize(numRows);//先给好numRows个元素,即vv里能存vector for(int i=0;i vv[i].resize(i+1);//每一行里再开好对应的大小 vv[i].front()=vv[i].back()=1;//最左最右都是1 } for(int i=2;i for(int j=1;j vv[i][j]=vv[i-1][j-1]+vv[i-1][j]; } } return vv; } }; public: vector vector vv[i].resize(i+1,0);//每一行里再开好对应的大小 vv[i].front()=vv[i].back()=1;//最左最右都是1 } for(int i=0;i for(int j=0;j if(vv[i][j]==0) vv[i][j]=vv[i-1][j-1]+vv[i-1][j]; } } return vv; } }; public: int removeDuplicates(vector if(nums.size()==0)//处理0的情况 { return 0; } int index=1; int pre_index=0; while(index if(nums[index]!=nums[pre_index]) { nums[pre_index+1]=nums[index];//赋值给下一个后加一,就是新位置了,再用后面的来比 pre_index++; } index++; } return pre_index+1;//下标加1才是元素个数 } }; // write code here int half=numbers.size()/2; for(int i=0;i int count=0; for(int j=i+1;j if(numbers[i]==numbers[j]) { count++; } if(count=half) { return numbers[i]; } } } return numbers[0]; } }; // write code here int count = 0; int candidate=numbers[0];//一开始就假设第一个是候选者 for (auto num : numbers) { if (count == 0) { candidate = num; } count += (num == candidate) ? 1 : -1;//相等就+1,不等-1 } return candidate; } };
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!



