当前位置: 首页 > news >正文

大连做网站软件/搜索关键词优化服务

大连做网站软件,搜索关键词优化服务,合肥瑶海区有什么大学,个人网站论文结束语给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a b c 0 ?找出所有满足条件且不重复的三元组。 注意:答案中不可以包含重复的三元组。 例如, 给定数组 nums [-1, 0, 1, 2…

给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。

注意:答案中不可以包含重复的三元组。

例如, 给定数组 nums = [-1, 0, 1, 2, -1, -4],

满足要求的三元组集合为:
[
   [-1, 0, 1],
   [-1, -1, 2]
]

来源:力扣(LeetCode)
链接:
https://leetcode-cn.com/problems/3sum

分析:

暴力法的复杂度是O(N^3),肯定会超时

先将数组排序,假设k1<=k2<=k3,先固定k1,然后通过双指针法在k1的后面寻找k2和k3

可以利用的性质:

1.如果k1大于0,则三数之和肯定无法等于0,可以跳过该k1

2.如果v[i]==v[i-1],那么i-1可以跳过,因为这样必然会导致重复结果

可以采用set去除重复结果

时间复杂度:O(N^2)

排序的复杂度是O(N*log N),但是后续固定看+双指针的复杂度是O(N^2),二者取大的,所以时间复杂度是O(N^2)

空间复杂度:快排需要,最好情况:O(log N),最坏情况:O(N)

 

code:

class Solution {
public:
vector<vector<int> > threeSum(vector<int>& a)
{vector<vector<int> > vv;vector<int> v;set<vector<int> > s;set<vector<int> >::iterator it;int n=a.size();if(n<3)return vv;sort(a.begin(),a.end());for(int k=0;k<n-2;k++){if(a[k]>0)continue;if(k>0&&a[k-1]==a[k])continue;int l=k+1;int h=n-1;//cout<<"k="<<k<<"l="<<l<<" h="<<h<<endl;
        s.clear();while(l<h){int ans=a[k]+a[l]+a[h];//cout<<"l="<<l<<" h="<<h<<"ans="<<ans<<endl;if(ans==0){v.clear();v.push_back(a[k]);v.push_back(a[l]);v.push_back(a[h]);s.insert(v);l++;h--;}else if(ans<0){l++;}else if(ans>0){h--;}}if(s.size()!=0){for(it=s.begin();it!=s.end();it++){vv.push_back(*it);}}}return vv;
}
};

 

 

http://www.jmfq.cn/news/5113801.html

相关文章:

  • 网站制作三站/网店运营培训
  • 长宁区网站制作/搜狗站长平台验证不了
  • 泰安做网站公司哪家好/网络销售怎么才能找到客户
  • 华企立方做网站/微营销推广平台有哪些
  • 大型网站建设翻译英文/深圳网络推广优化
  • wordpress不显示某个标签/seo培训机构
  • vps正常网站打不开/河南最近的热搜事件
  • 义乌外贸网站开发/如何制作网页游戏
  • 购物网站开发设计文档/业务员用什么软件找客户
  • 做情趣网站违法吗/滕州seo
  • 福州招聘网站有哪几个/武汉关键词包年推广
  • 云盘建设网站/电商最好卖的十大产品
  • 网站宣传怎样做不违法/app渠道推广
  • 做网站找谁/各大引擎搜索入口
  • 徐家汇网站建设/网站流量分析报告
  • 网站仿站大多少钱/引擎搜索对人类记忆的影响
  • 下载素材第三方网站是怎么做/镇江百度推广公司
  • 网站建设和推广评价指标/制作网页的流程
  • 小说网站seo排名怎么做/超链接友情外链查询
  • 企业网站 备案 网站名称/正规的网店培训机构有哪些
  • 网站搭建中单页面/广州网站开发多少钱
  • 平面设计公司名字大全/seo公司推荐推广平台
  • 男做变态手术视频网站/海外市场推广做什么的
  • 网站源码免费分享/网络运营商
  • 北京知名网站建设/找资源
  • 网站建设公司南昌/百度热搜榜排名
  • 怎么做网站跳转链接/梅花seo 快速排名软件
  • b2c网站资料怎么做/郑州优化网站关键词
  • 个人网站备案 网站名称/百度安装免费下载
  • 网站模板安装步骤/西安网站推广助理