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

整站seo优化一般多少钱仿it资讯类网站源码

整站seo优化一般多少钱,仿it资讯类网站源码,龙华民治网站设计公司,电子商务平台建设实施方案一、移动零 双指针,一个cur,一个dest 两个指针的作用: cur:从左往右扫描数组,遍历数组 dest:已处理的区间内,非零元素的最后一个位置 三个区间:[ 0, dest ] [ dest 1, cur - 1 …

一、移动零

双指针,一个cur,一个dest

两个指针的作用:

cur:从左往右扫描数组,遍历数组

dest:已处理的区间内,非零元素的最后一个位置

三个区间:[ 0, dest ] [ dest + 1, cur - 1 ] [ cur, n - 1 ]

class Solution {
public:void moveZeroes(vector<int>& nums) {int cur = 0, dest = 0;int n = nums.size();while(cur < n){if(nums[cur] != 0)swap(nums[dest++], nums[cur]);cur++;}}
};

2、复写零

思路: 

class Solution {
public:void duplicateZeros(vector<int>& arr) {int dest = -1, cur = 0, n = arr.size();// 从左往右while(cur < n){if(arr[cur]) dest++;else dest+=2;if(dest >= n-1) break;cur++;}// 处理边界情况if(dest == n){arr[n-1] = 0;cur--;dest-=2;}// 从右往左while(cur >= 0){if(arr[cur])    {arr[dest--] = arr[cur--];}else{cur--;arr[dest--] = 0;arr[dest--] = 0;}}}
};

3、快乐数

思路: 

class Solution {
public:int _isHappy(int n) {int ret = 0;while (n) {int m = n % 10;ret += pow(m, 2);n /= 10;}return ret;}bool isHappy(int n) {int low = n, fast = n;low = _isHappy(low);fast = _isHappy(fast);fast = _isHappy(fast);while (fast != low) {low = _isHappy(low);fast = _isHappy(fast);fast = _isHappy(fast);}if (fast == 1)return true;elsereturn false;}
};

4、盛水最多的容器

思路: 

 

class Solution {
public:int maxArea(vector<int>& height) {int left = 0, right = height.size()-1;int maxA = 0, area = 0;while(left < right){area = (right-left)*(min(height[left], height[right]));if(maxA < area) maxA = area;if(height[left] > height[right]) right--;else left++;}return maxA;}
};

5、有效三角形的个数

思路: 

 

class Solution {
public:int triangleNumber(vector<int>& nums) {// 先排序sort(nums.begin(), nums.end());// 排序完成int n = nums.size(), c = n - 1;int sum = 0;while (c >= 2) {int left = 0, right = c - 1;while (left < right) {if (nums[left] + nums[right] > nums[c]) {sum += (right - left);right--;} elseleft++;}c--;}return sum;}
};

6、和为s的两个数

思路: 

 

class Solution {
public:vector<int> twoSum(vector<int>& price, int target) {int left = 0, right = price.size()-1;vector<int> retv;while(left < right){if(price[left] + price[right] > target) right--;else if(price[left] + price[right] < target) left++;else {retv.push_back(price[left]);retv.push_back(price[right]);break;}}return retv;}
};

7、三数之和

思路:  

class Solution {
public:vector<vector<int>> threeSum(vector<int>& nums) {vector<vector<int>> vv;// 1.先排序sort(nums.begin(), nums.end());// 2.固定一个数int i = 0, n = nums.size();while (i < n-1) {int left = i + 1, right = n - 1;int val = -nums[i];while (left < right) {if (nums[left] + nums[right] > val)right--;else if (nums[left] + nums[right] < val)left++;else {vector<int> v;v.push_back(nums[left]);v.push_back(nums[right]);v.push_back(-val);while (nums[left] == nums[++left] && left < right);         // 去重while (nums[right] == nums[--right] && left < right);       // 去重vv.push_back(v);}}while(nums[i] == nums[++i] && i < n-1);     // 去重,i < n-1,避免越界}return vv;}
};

8、四数之和

思路:  

class Solution {
public:vector<vector<int>> fourSum(vector<int>& nums, int target) {vector<vector<int>> vv;// 1.排序sort(nums.begin(), nums.end());// 排序完成,开始操作int n = nums.size();for(int i = 0; i < n; ){// 固定bfor(int j = i+1; j < n;){long long arm = (long long)target - nums[i] - nums[j];int left = j+1, right = n-1;while(left < right){int sum = nums[left] + nums[right];if(sum < arm) left++;else if(sum > arm) right--;else{vv.push_back({nums[i], nums[j], nums[left], nums[right]});// 开始去重 left rightleft++;while(left < right && nums[left] == nums[left-1]) left++;right--;while(left < right && nums[right] == nums[right+1]) right--;}}// 去重 jj++;while(j < n && nums[j] == nums[j-1]) j++;}// 去重 ii++;while(i < n && nums[i] == nums[i-1]) i++;}return vv;}
};// 第二种变形
class Solution {
public:vector<vector<int>> fourSum(vector<int>& nums, int target) {vector<vector<int>> vv;// 1.排序sort(nums.begin(), nums.end());// 排序完成,开始操作// 固定aint a = 0, n = nums.size();while (a < n - 1) {// 固定bint b = a + 1;while (b < n - 1) {int left = b + 1, right = n - 1;long long val = (long long)target - nums[a] - nums[b];while (left < right) {if (nums[left] + nums[right] > val)right--;else if (nums[left] + nums[right] < val)left++;else {vv.push_back({nums[a], nums[b], nums[left], nums[right]});// 去重 left rightwhile (nums[left] == nums[++left] && left < right);while (nums[right] == nums[--right] && left < right);}}// 去重 bwhile (nums[b] == nums[++b] && b < n - 1);}// 去重 awhile (nums[a] == nums[++a] && a < n - 1);}return vv;}
};
http://www.dtcms.com/a/466860.html

相关文章:

  • 如何建设一个静态网站宝塔怎么做网站的301跳转
  • 做静态网站有什么建议佛山家居网站全网营销
  • 【武大图书馆事件全过程】免费分享
  • SVN 抓取状态
  • Shell 脚本编程全解析:从入门到企业级实战
  • 嘉兴做网站优化杭州小周seo
  • 把网站做成app大冶市建设局网站
  • 吉林分销网站建设视频转文字网页
  • 厦门响应式网站网页做推广
  • 《中国个人信息保护法》解读与实践案例分析
  • 解除网站开发合同 首付款是否退花都区网站建设
  • SQL 注入详解:从原理到实战
  • 校园网站建设情况抽奖网站做的下去吗
  • 5.数据分析Matplotlib(数据可视化)
  • 西双版纳网站制作公司网站集约化建设题目
  • hot100的解析
  • 企业网站建设上机考试微信推广引流方法
  • 【LangChain】P19 LangChain Memory(一):让 AI 拥有“记忆力“的秘密
  • 揭阳网站制作案例宝安中心医院上班时间
  • 吴江开发区建设局网站如何建立网站站点
  • 娱乐公司网站模板西安市网站搭建
  • 做网站运用的软件郑州百姓网免费发布信息网
  • Ansible安装及模块
  • 揭阳网站建设公司全民建网站
  • 哪些网站可以做调查赚钱wordpress服务器镜像
  • AI + 区块链开发实战:3 大技术方向 + 5 个落地案例,解锁去中心化网络效能密码
  • 安阳网站建设方案自己做社交网站吗
  • Linux之curl常用参数介绍
  • 唐山seo网站建设提供网页制作平台的公司
  • 南阳市网站建设专利申请