• leetcode 4sum


    4-sum 已通过测试
    定义一对指针,指向两头。再定义一对指针,指向中间的两个元素。加起来看看跟target比较一下。再决定内部指针怎么移动。
    class Solution { public: vector<vector<int> > fourSum(vector<int> &num, int target) { vector<int>v; vector<vector<int>>v1; int len=num.size(); if(len<=3)return v1; sort(num.begin(),num.end()); for(int i=0;i<len-3;i++) { for(int k=len-1;k>i+2;k--) { int ab=num[i]+num[k]; int c=target-ab; int m=i+1,n=k-1; for(;m<n;) { int sum=num[m]+num[n]; if(sum==c) { v.clear(); v.push_back(num[i]); v.push_back(num[m]); v.push_back(num[n]); v.push_back(num[k]); if(count(v1.begin(),v1.end(),v)==0) v1.push_back(v); m++;n--; } else if(sum<c) { m++; } else n--; } } } return v1; } };
  • 相关阅读:
    Win10安装组策略功能
    IIS 站点批量迁移
    MongoDB 异常记录
    微信Web开发者工具
    NHibernate 异常
    Git 常用命令
    IIS 反向代理
    CSS应用
    Oracle
    Android之ActionBar学习
  • 原文地址:https://www.cnblogs.com/tgkx1054/p/3053901.html
Copyright © 2020-2023  润新知