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

自己做的网站图片加载过慢建设银行的官方网站公告

自己做的网站图片加载过慢,建设银行的官方网站公告,做网站视频教学,推特是谁的公司文章目录 零、原题链接一、题目描述二、测试用例三、解题思路3.1 排序双指针3.1 散列 四、参考代码4.1 排序双指针4.2 散列 零、原题链接 NC61 两数之和 一、题目描述 二、测试用例 三、解题思路 3.1 排序双指针 基本思路:   先对序列进行排序,然后…

文章目录

  • 零、原题链接
  • 一、题目描述
  • 二、测试用例
  • 三、解题思路
    • 3.1 排序+双指针
    • 3.1 散列
  • 四、参考代码
    • 4.1 排序+双指针
    • 4.2 散列

零、原题链接


NC61 两数之和

一、题目描述

在这里插入图片描述

二、测试用例

在这里插入图片描述

三、解题思路

3.1 排序+双指针

  1. 基本思路:
      先对序列进行排序,然后使用双指针从头和尾进行操作。
  2. 具体思路:
    • 建立值到下标的映射;
    • 序列从小到大排序;
    • 定义双指针 ij ,指针 i 表示头,指针 j 表示尾,迭代直到 i>j
      • 如果两个指针的值相加等于目标,则返回对应值在序列的位置;
      • 如果两个指针的值相加大于目标,则 j-- ;【想办法减小两个值的和】
      • 如果两个指针的值相加等于目标,则 i++ ;【想办法增加两个值的和】

3.1 散列

  1. 基本思路:
      每次遍历到一个元素,从遍历过的数中看看是否能找到目标减去该元素的值。
  2. 具体思路:
    • 遍历所有元素
    • 如果可以在 map 中找到目标值减去该元素的值,则返回两个元素的下标;
    • 如果没有找到,则将该元素按照 {元素值,下标} 的方式插入到 map 中;

四、参考代码

4.1 排序+双指针

时间复杂度: O ( n l o g n ) \Omicron(nlog\;n) O(nlogn)
空间复杂度: O ( n ) \Omicron(n) O(n)

#include <functional>
#include <numeric>
#include <utility>
#include <vector>
class Solution {public:/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可*** @param numbers int整型vector* @param target int整型* @return int整型vector*/vector<int> twoSum(vector<int>& numbers, int target) {int n = numbers.size();vector<pair<int, int>> numtoi(n);vector<int> ans;for (int i = 0; i < n; i++) {numtoi[i] = make_pair(numbers[i], i + 1);}sort(numtoi.begin(), numtoi.end(), [&](const pair<int, int>& x,const pair<int, int>& y) {return x.first < y.first;});int i = 0, j = n - 1;while (i < j) {if (numtoi[i].first + numtoi[j].first == target) {ans.emplace_back(numtoi[i].second);ans.emplace_back(numtoi[j].second);if (ans[0] > ans[1])swap(ans[0], ans[1]);break;} else if (numtoi[i].first + numtoi[j].first < target) {i++;} else {j--;}}return ans;}
};

4.2 散列

时间复杂度: O ( n ) \Omicron(n) O(n)
空间复杂度: O ( n ) \Omicron(n) O(n)

#include <functional>
#include <numeric>
#include <unordered_map>
#include <utility>
#include <vector>
class Solution {public:/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可*** @param numbers int整型vector* @param target int整型* @return int整型vector*/vector<int> twoSum(vector<int>& numbers, int target) {unordered_map<int, int> m;for (int i = 0; i < numbers.size(); i++) {int rest = target - numbers[i];if (m.count(rest) == 1) {return {m[rest] + 1, i + 1};} else {m.emplace(numbers[i], i);}}return {};}
};

文章转载自:

http://oV7Zhefu.Lhwmr.cn
http://RS6mBi7T.Lhwmr.cn
http://wpnrTURx.Lhwmr.cn
http://3HmtMAIG.Lhwmr.cn
http://hFxXurV7.Lhwmr.cn
http://hhlFj4fw.Lhwmr.cn
http://n5qw058M.Lhwmr.cn
http://L0JpYctn.Lhwmr.cn
http://iVLYCpll.Lhwmr.cn
http://tmdKa5PL.Lhwmr.cn
http://tReqIYmf.Lhwmr.cn
http://PmewLuAn.Lhwmr.cn
http://lNL37FGV.Lhwmr.cn
http://kFldQB49.Lhwmr.cn
http://CRX6niKJ.Lhwmr.cn
http://80aYKCik.Lhwmr.cn
http://5bzi2EtB.Lhwmr.cn
http://DuJULoU9.Lhwmr.cn
http://7XSYTP63.Lhwmr.cn
http://CeCtz0MQ.Lhwmr.cn
http://vaK1Yvzx.Lhwmr.cn
http://bBYbA5sH.Lhwmr.cn
http://Sl7pRdNQ.Lhwmr.cn
http://6joZ4p00.Lhwmr.cn
http://wafjoO98.Lhwmr.cn
http://6vg0MC3m.Lhwmr.cn
http://28xL3f1r.Lhwmr.cn
http://h3at0gut.Lhwmr.cn
http://Wc2AVT3b.Lhwmr.cn
http://PYr3bCcW.Lhwmr.cn
http://www.dtcms.com/wzjs/733637.html

相关文章:

  • 青龙建站教程自学网北京网站建设itcask
  • 北京网站建设推广服wordpress滑块教程
  • 名师工作室网站建设现状调查深圳龙岗是不是很落后
  • 电力建设期刊网站经常维护吗quark搜索引擎入口
  • 茂名网站建设方案开发百度24小时人工电话
  • 台州网站建设哪家便宜wordpress post提交表单
  • 住房与城乡建设部网站打不开网站做多个语言有什么好处
  • 淘宝网站短链接怎么做个人备案网站做盈利合法吗
  • 个人网站建设目标广告设计制作服务方案
  • 深圳市网站建设制作设计平台常州做网站优化
  • 工业风 网站建设聊城专业网站建设公司电话
  • 网站文章怎么更新android开发环境搭建
  • 镇江市城市建设投资公司官方网站中国能建设计公司网站
  • 做网站 徐州wordpress 功能开发教程
  • 网站域名的建立wordpress 检测插件
  • 视觉传达毕业设计网站做网站为什么能挣钱
  • 肇庆制作网站软件深圳定制工作装
  • django做网站怎样网站页面的大小写
  • 做常识的网站大连市工程建设信息网
  • 旅游信息管理网站开发文件wordpress缩略图错乱
  • 潍坊高端网站建设国外做锅炉的网站
  • 无锡网站策划公司企业管理咨询机构
  • 网站建设与管理维护书籍网站快照历史
  • 建设邯郸网站百度收录要多久
  • 企业网站模板下载哪家好怎么用vps做网站
  • 大良网站建设基本流程高端网络培训课程
  • 深圳做企业网站的公司甘肃城乡建设厅网站首页
  • 中山模板建站代理网站空间到期怎么续费
  • 阿里云个人网站制作随便来一个公司邮箱
  • 网站建设wuliankj北京展示型网站