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

做商业网站品牌网线

做商业网站,品牌网线,前端跟后端哪个就业难,重庆孝爱之家网站建设1.比较含退格的字符串 题目 解析 核心思想:退格只对前一个元素有影响,所以从后往前遍历;第一步:双序列双指针从后往前遍历字符串,遇到退格就不断向前消掉元素;第二步:判断指针位置&#xff1a…

1.比较含退格的字符串

题目

解析

  • 核心思想:退格只对前一个元素有影响,所以从后往前遍历
  • 第一步:双序列双指针从后往前遍历字符串,遇到退格就不断向前消掉元素;
  • 第二步:判断指针位置:
    • 都 >= 0:如果元素不相等,返回 false;
    • 只有一个 >= 0:返回 false;
    • 都 < 0:跳出循环,返回 true;

代码

class Solution {
public:bool backspaceCompare(string s, string t) {// 时间复杂度:O(m + n)// 空间复杂度:O(1)int n = s.size(),m = t.size();int skipS = 0,skipT = 0;// 记录字符串中'#'数量int i = n - 1,j = m - 1;while(i >= 0 || j >= 0){// 从后往前消掉 s 中的 '#'while(i >= 0){if(s[i] == '#'){skipS ++, i --;}else if(skipS > 0){skipS --, i --;}else{break;}}// 从后往前消掉 t 中的 '#'while(j >= 0){if(t[j] == '#'){skipT ++, j --;}else if(skipT > 0){skipT --, j --;}else{break;}}// i,j 都没有遍历完,继续比较字符if(i >= 0 && j >= 0){if(s[i] != t[j]){return false;}}else if(i >= 0 || j >= 0){ // 只有一个遍历完了return false;}i --,j --;}return true;}
};

2.情感丰富的文字

题目

解析

  • 核心思想:该题最难的部分就是理解 “扩张” 操作:假设有两个字符相同的连续段 a 和 b,如何判断是否能扩展 b  -> a;
  • a 和 b 长度相同,定义为可扩张
  • a 和 b 长度不同,根据「a 和 b 长度对比」以及「a 的长度大小」分情况讨论:
    • b > a,不可扩张
    • 当 a > b,我们不一定要拿整一段的 b 进行扩张,可以拿 b 中的一个字符进行扩张。 因此只需要满足 a 扩张后的长度大于等于 3 即可定义为可扩张。

代码

class Solution {
public:int expressiveWords(string s, vector<string>& words) {// 时间复杂度:O(n * m + ∑(word[i].size()))// 空间复杂度:O(1)int n = s.size();int ans = 0;for(string word : words){int m = word.size(),i = 0,j = 0;// word 为模版字符串,s 为扩展字符串while(i < n && j < m){if(s[i] != word[j]) break;// 字母不相等// 分别找到 s,word 连续相同字符长度 a,bint a = i,b = j;while(a < n && s[a] == s[i]) a ++;while(b < m && word[b] == word[j]) b ++;a -= i,b -= j;// 如果长度不相等,且扩展的长度 a < b 模版长度,不可扩展// 如果扩展长度 a < 3,也不可扩展if(a != b && (a < b || a < 3)) break;// 更新指针,继续遍历下一个元素i += a,j += b;}if(i == n && j == m) ans ++;}return ans;}
};

3.最小差

题目

解析

  • 核心思想:两个序列数字进行比较,数字更小的指针移动

代码

class Solution {typedef long long ll;
public:int smallestDifference(vector<int>& a, vector<int>& b) {// 时间复杂度:O(nlogn + mlogm)// 空间复杂度:O(1)int n = a.size(),m = b.size();ll ans = INT_MAX;sort(a.begin(),a.end());sort(b.begin(),b.end());int i = 0,j = 0;while(i < n && j < m){if(a[i] == b[j]) return 0;else {ans = min(ans,abs((ll)a[i] - (ll)b[j]));if(a[i] > b[j]) j ++;else i ++;} }return ans;}
};

文章转载自:

http://zsHqRzy0.rqxch.cn
http://TZ822QJh.rqxch.cn
http://5EZK1a59.rqxch.cn
http://WsvIVKzO.rqxch.cn
http://U3WpFDg7.rqxch.cn
http://BjyG5NQb.rqxch.cn
http://a4eo4RMk.rqxch.cn
http://KdfAEPhW.rqxch.cn
http://31tTwa8d.rqxch.cn
http://UH6ltOmI.rqxch.cn
http://vJLkSJAs.rqxch.cn
http://flSGorLE.rqxch.cn
http://hPIo2iNE.rqxch.cn
http://T6a3RZ6p.rqxch.cn
http://79exCoGD.rqxch.cn
http://FY6S5ImG.rqxch.cn
http://pw1uXenC.rqxch.cn
http://xYfHII0H.rqxch.cn
http://t0NpUCtF.rqxch.cn
http://Ebgv5oNU.rqxch.cn
http://h7n0CeQY.rqxch.cn
http://pTlst0Jj.rqxch.cn
http://7pXO8qK1.rqxch.cn
http://T79HxhoE.rqxch.cn
http://JYmsNiXZ.rqxch.cn
http://aa6FhaY4.rqxch.cn
http://f5d5FpeM.rqxch.cn
http://DIYJ2Mbt.rqxch.cn
http://Q0b3h7eI.rqxch.cn
http://lRClQDCV.rqxch.cn
http://www.dtcms.com/wzjs/722431.html

相关文章:

  • 国际婚恋网站做翻译合法吗观山湖区网站建设
  • 怎们自己做网站门户网站 布局
  • 电脑上如何做网站宣传建e网室内设计网别墅
  • 网站优化外包服务未来中森网站建设价格
  • 黄埔网站建设价格广西住建局官方网站
  • flash html网站模板营口组织部网站 两学一做
  • 小狗做爰网站软件开发平台合同
  • 网站建设 中企动力上海wordpress 显示异常
  • 哈尔滨建设部网站用mcu做灯光效果网站
  • 乌尔禾区做网站哪里好德化网站建设
  • 凯里网站建设流程中建国际建设有限公司官网是央企吗
  • 网站现在用h5做的吗网站开发 接单
  • 做网站的代码营销策划公司名称
  • 免费自助建站网站学校网站设计首页
  • 六安电商网站建设哪家好广告联盟推广
  • 做 专而精 的网站仙桃网站设计
  • 做网站有用吗中国职业培训在线官网
  • 版式网站有哪些多城市网站开发
  • 青岛做网站的公司哪个比较好seo收费
  • 多网合一网站设计公司名字创意
  • dede地方门户网站模板山西省建设厅官方网站
  • 学校网站建设维护上海做seo
  • 巢湖市网站建设推广wordpress 登录 手机
  • 怎样创建个人购物网站wordpress 获取文章类型
  • 网站建设求职具备什么响应式地方网站
  • 做门户网站用什么服务器本人做静态网站开发
  • 网站屏蔽收录sem搜索
  • 物流网站和数据库建设做家常菜哪个网站最好
  • 那些网站是php做的免费网站建设品牌
  • 建设一个网站要多网站建设技术包括哪些方面