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

网站网商什么网站可以做公共基础知识

网站网商,什么网站可以做公共基础知识,wordpress地址如何修改,帮别人做网站 别人违法刷题日记#xff1a;面试经典 150 题 DAY6 392. 判断子序列167. 两数之和 II - 输入有序数组11. 盛最多水的容器15. 三数之和209. 长度最小的子数组 392. 判断子序列 原题链接 392. 判断子序列 双指针#xff0c;i指向s#xff0c;j指向t 如果s[i]t[j]#xff0c;则匹配… 刷题日记面试经典 150 题 DAY6 392. 判断子序列167. 两数之和 II - 输入有序数组11. 盛最多水的容器15. 三数之和209. 长度最小的子数组 392. 判断子序列 原题链接 392. 判断子序列 双指针i指向sj指向t 如果s[i]t[j]则匹配到一个字母两个指针都后移如果s[i]!t[j]则指针j后移继续寻找 class Solution { public:bool isSubsequence(string s, string t) {int i 0, j 0;if(s.size() 0) return true;while(i s.size() j t.size()) {if(s[i] ! t[j]) {j;if(j t.size()) {return false;}} else {i, j;if(i s.size()) {return true;}}}return false;} };167. 两数之和 II - 输入有序数组 原题链接 167. 两数之和 II - 输入有序数组 双指针本质上是对搜索空间进行某种顺序的遍历一般都会用得上某种单调性 对于题来说搜索空间如下所示 选择棕色作为起点是因为从这里出发可以仅通过向左向右两个动作到达任意一个状态。这保证了不会有答案被漏比起爆搜来说可以提升性能的原因在于利用单调性进行搜索的剪枝。比如我们得知当前状态比目标状态大时就可以确定一系列状态都不可能是目标状态了。 从实现上来说就是一个指针位于数列头部一个位于尾部两个指针逐渐向中间靠拢 class Solution { public:vectorint twoSum(vectorint numbers, int target) {for(int i 0, j numbers.size()-1;i j;) {if(numbers[i]numbers[j] target) {return {i1 , j1};}if(numbers[i]numbers[j] target) {i;}if(numbers[i]numbers[j] target) {j--;}}return {};} };11. 盛最多水的容器 原题链接 11. 盛最多水的容器 容积等于 两个板子相差的距离×较矮板子的的高。使用双指针从最宽的底开始接下里考虑移动哪个指针 若移动指向较高板子的指针则底一定变小高也一定变小因为高总是较低板子的高所以只能移动指向较低板子的指针 class Solution { public:int maxArea(vectorint height) {int result 0;for(int i 0, j height.size()-1;i j;) {result max(result,(j-i)*min(height[i],height[j]));if(height[i] height[j]) {i;} else {j--;}}return result;} };15. 三数之和 爆搜 O ( N 3 ) O(N^3) O(N3)可以比较简单的想到先排序再固定一个数就可以使用双指针了。 我一开始脑抽想着固定中间大小的那个老是想追求对称性导致的直接处理重复情况处理闷了。 固定最小的数比较好做。把最小数固定其实就回到了167. 两数之和 II - 输入有序数组。注意两点 最外层循环遍历到正数就可以立马停止每次移动指针时都尽可能到达连续相同元素的尾部防止重复的情况发生 class Solution { public:vectorvectorint threeSum(vectorint nums) {int len nums.size();sort(nums.begin(), nums.end());vectorvectorint result;for(int i 0;i len-2;i) {if(nums[i] 0) break;if(i 0 nums[i-1] nums[i]) continue;for(int j i1, k len-1;j k;) {int sum nums[i]nums[j]nums[k];if(sum 0) {for(j 1;jk nums[j-1]nums[j];j);} else if(sum0) {for(k - 1;jk nums[k1]nums[k];k--);} else {result.push_back({nums[i],nums[j],nums[k]});for(j 1;jk nums[j-1]nums[j];j);for(k - 1;jk nums[k1]nums[k];k--);}}}return result;} };209. 长度最小的子数组 原题链接 209. 长度最小的子数组 想象数组是一组竖杆杆与杆之间距离不一。有个皮筋现在是松弛状态想要找到能让它绷紧时跨越最少的竖杆。 先给皮筋套在最左边然后抻右端直到皮筋紧然后一点点松左端直到恰好送掉然后在抻右端重复这个步骤 class Solution { public:int minSubArrayLen(int target, vectorint nums) {int len nums.size();int ans len1;int left 0, right 0;int length 0;int sum 0;while(right len) {sum nums[right];length;while(sum target) {ans min(ans,length);sum - nums[left];length--;left;}right;}if(ans len) return 0;return ans;} };
http://www.zqtcl.cn/news/243604/

相关文章:

  • 淘客网站自己做固安建站公司
  • 咸阳学校网站建设联系电话网络app开发网站建设价格
  • 没网站怎么做淘宝客网站建设耂首先金手指
  • 网站带做收录排名淘外网站怎么做
  • 网站建设分金手指排名五申请邮箱账号注册
  • 餐饮加盟网站建设字体怎么安装wordpress
  • 网站建设与维护培训凡科和有赞哪个好用
  • 景区网站的作用长春新冠最新情况
  • 个人网站上传有啥要求wordpress 浏览记录
  • appcan 手机网站开发wordpress首页音乐
  • 杭州响应式网站案例建筑工程网站建站方案
  • 网站访客抓取国内网站搭建
  • 凡科网站做的好不好太原网页
  • 十堰商城网站建设国外效果图网站
  • 怎么登陆建设工程网站泉州网红
  • 哈尔滨队网站网页美工跨境电商是什么意思
  • 网站规划与建设课程推广型网站建设软件
  • 山东网站建设系统网站设计哪家更好
  • 网络推广有哪些网站网络推广公司联系昔年下拉
  • 长沙专业外贸建站公司百度提交网站入口网站
  • 西安网站搭建建设定制市场营销推广策略
  • 用户等待网站速度公司网站怎么做站外链接
  • 设计新闻发布网站模板wonder audio wordpress
  • 教育与培训网站建设wordpress侧栏文章
  • 四川做网站的公司哪家好信誉好的赣州网站建设
  • seo外包网站网站的备案流程图
  • 学网站建设好么免费网页制作有哪些
  • 宁波公司网站开发招聘最便宜的视频网站建设
  • 找人做网站大概多少钱永州企业网站建设
  • 免费备案网站空间网站怎么做组织图