leetcode18
2015-10-06 22:12
381 查看
LeetCode18-----------4Sum
没啥好说的,跟3Sum类似,代码也很类似,思路就是先固定两个数,再对另外两个数夹逼。只要记得去重就好。
代码:
没啥好说的,跟3Sum类似,代码也很类似,思路就是先固定两个数,再对另外两个数夹逼。只要记得去重就好。
代码:
bool cmp(const int&a ,const int&b) { return a < b; } class Solution { public: vector< vector<int> > fourSum(vector<int>& nums, int target) { int len = nums.size(); int i; int j; int k; int l; vector< vector<int> >result; vector<int>temp; if(len < 4) { return result; } sort(nums.begin(),nums.end(),cmp); for(i=0;i<len-3;i++) { for(j=i+1;j<len-2;j++) { k=j+1; l=len-1; while(k<l) { if(nums[i]+nums[j]+nums[k]+nums[l]==target) { temp.push_back(nums[i]); temp.push_back(nums[j]); temp.push_back(nums[k]); temp.push_back(nums[l]); result.push_back(temp); temp.clear(); while(k<l&&nums[k]==nums[k+1]) k++; while(k<l&&nums[l]==nums[l-1]) l--; } if(nums[i]+nums[j]+nums[k]+nums[l] < target) { k++; } else { l--; } } while(j<len-2&&nums[j]==nums[j+1]) j++; } while(i<len-3&&nums[i]==nums[i+1]) i++; } return result; } };
相关文章推荐
- maven 以及maven 插件 下载安装
- kernel中如何读取内存的大小和地址
- 文库的构建及测序(未完待续)
- Android横竖屏相关
- Delphi中的结构体与类
- 最快速度找到内存泄漏
- [LeetCode] Word Pattern
- 产品的What究竟由谁产生
- 自学QT之托盘图标
- JAVA基础学习之TCP网络编程
- nagios监控mysql
- 如何在ubuntu中的虚拟机下winXP使用USB设备
- django 中的ajax
- JavaBean的编译和部署说明
- JQuery表单元素过滤选择器
- easyUI parser的使用
- Logistic Regression笔记
- 每个 Web 开发者都应该知道的关于 URL 编码的知识
- 三十分钟掌握STL
- 星际争霸II第一次进入前100名记录。