
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
j++)/*已经加过的元素不用再次相加,即计算过nums[0]+nums[1],不用再计算nums[1]+nums[0]*/优化解(map):将目标值减去当前数组值得到一个结果,那么该结果数值加上当前数组值就是目标值,通过map记录数组数值与数组下标从而可以直接查找数值和对应下标。=i)//查找是否有r存在当前元素中,且不能是相同数组下标。if(nums[j]==r)//r元素存在下标。//num
滑动窗口从s字符串第一个字符位置开始,在滑动窗口内字符出现次数对应数组与p字符出现次数对应数组比较,若一样则记录当前滑动窗口的左指针,滑动窗口右移;思路:右指针始终要向右移动遍历字符,若滑动窗口中没有与右指针指向字符重复,右指针指向字符加入滑动窗口;当滑动窗口中出现重复元素时,滑动窗口从左指针开始删除元素且左指针要右移动直到没有重复字符的位置停止;每一次滑动窗口的长度都要与上一次滑动窗口的大小比较
思路:双指针移动,左指针指向数组一个元素;比较左右指针指向数字,对应较小的数字对应位置指针向中间方向移动一格,每一次移动前与移动后的面积比较,只保留比较后最大的面积;if(height[l]>=height[r])//右指针对应数字较小,右指针向中间移动一格;左右指针对应数字一样大小右指针向中间移动一格(也可以是左指针移动)为什么最优解在这个过程里面,因为宽度减小:当高度大的一侧移动时面积一定变小
思路:把数组排序,从数组中第一个元素开始,检查数组中当前元素加1是否等于下一个元素,成立则连续序列加一;若数组中当前元素是等于下一个元素,那连续序列不变且继续查看下一个元素;若数组中当前元素加1不等于下一个元素,那么连续序列重新从1开始增加;只保留连续序列最大值。







