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

关键词爱站网wordpress 主题 教程

关键词爱站网,wordpress 主题 教程,安徽省建设厅网站首页,网店运营是做什么的题目描述 题目链接 问题分析 这道体的思路非常简单和好理解,找出字符串中的元音字符,然后按照ASSIC值进行排序,然后插入回对应的位置,解题步骤为: 使用一个set(可以快速查找的容器)&#x…

题目描述

题目链接
在这里插入图片描述

问题分析

这道体的思路非常简单和好理解,找出字符串中的元音字符,然后按照ASSIC值进行排序,然后插入回对应的位置,解题步骤为:

  1. 使用一个set(可以快速查找的容器),建立元音字符集合
  2. 遍历整个字符串s,挨个匹配是否在set中,然后使用一个数组记录元音字符在字符串中的位置
  3. s中的对应位置的元素提取出来,按照ASSIC进行排序
  4. 挨个插入回字符串中

简单模拟的解法

class Solution {set<char> s_set={'A','E','I','O','U','a','e','i','o','u'};
public:string sortVowels(string s) {string S(s);//遍历字符串并查找元音字符的位置vector<int> v;for(int i=0;i<S.size();i++){if(s_set.find(S[i])!=s_set.end()){v.push_back(i);}}if(v.size()<=1) return s;        vector<int> v_copy(v);//提取元婴字符,进行排序sort(v.begin(),v.end(),[S](int a,int b){return S[a] < S[b];});//插入回字符串中对应的位置string ret(s);for(int i=0;i<v.size();i++){ret[v_copy[i]] = s[v[i]];}return ret;}
};

这个代码可以跑通大部分的测试用例2214 / 2216,但是在字符串超长的时候就会超时,所以需要进行优化

优化后

因为总共就10个元音字符(大小写),可以使用一个数组或者map记录每个字符在字符串中出现的次数。(数组的话就需要消耗58个单元,map需要消耗10个单元)

int v[58]={0};//根据ASSIC码表的顺序,ch-'A'
unordered_map<char,int> s_set={{'A',0},{'E',0},{'I',0},{'O',0},{'U',0},{'a',0},{'e',0},{'i',0},{'o',0},{'u',0}};

然后使用一个只读的数组或者字符串,来设置好元音字符的顺序,也就是待会插入元音字符的顺序,根据ASSIC码值

vector<char> sv = {'A','E','I','O','U','a','e','i','o','u'};
  1. 挨个遍历字符串s,统计出元音字符出现的次数(不能少),同时可以统计出现的位置(也可以不统计,在第4步直接从头遍历并判断,统计是为了优化第四步的时间)
  2. 对于排序元音字符,通过设置sv也已经做好
  3. 使用一个index(作为一个双指针),挨个遍历到需要插入的元音字符(统计次数不为0)
  4. 挨个遍历到s中元音字符的位置,然后使用Index按顺序插入元音字符
class Solution {unordered_map<char,int> s_set={{'A',0},{'E',0},{'I',0},{'O',0},{'U',0},{'a',0},{'e',0},{'i',0},{'o',0},{'u',0}};vector<char> sv = {'A','E','I','O','U','a','e','i','o','u'};
public:string sortVowels(string s) {vector<int> v;int i=0;for(auto& e: s){if(s_set.find(e)!=s_set.end()){s_set[e] +=1;v.push_back(i);}i++;}if(v.size()<=1) return s; int index = 0;for(auto& e:sv)//最多遍历9次{if(s_set[e] > 0){break;}index++;}for(int i=0;i<v.size();i++){s[v[i]] = sv[index];s_set[sv[index]]--;while(index < sv.size()&&s_set[sv[index]]<=0){index++;}}return s;}
};

该问题,主要是需要优化不必要的耗时,思路并不难

http://www.dtcms.com/a/459761.html

相关文章:

  • 网站左侧漂浮代码苏州优化亚当
  • 网站营销队伍网站建设贰金手指下拉贰拾
  • 广西玉林网站建设正规公司WordPress对象储存
  • 关于旅游类网站建设设计方案手机网站改版了
  • 科研网站怎么建设网站情况建设说明
  • 做网站就上房山华网天下图文识别微信小程序是什么
  • 免费网站怎么注册seo数据优化教程
  • 南通 网络 公司网站东莞网站优化关键词公司
  • 网上有做衣服的网站河南省建设厅建筑信息网官网
  • 苏州建设职业培训中心网站英文网站策划
  • 分享10个国外优秀的平面设计网站表格制作方法
  • 如何修改网站模板二手手表交易平台
  • 网站做服务端花卉网站建设策划方案
  • (2) SwiftUI 基础(第二篇)
  • (3) SwiftUI 基础(第三篇)
  • wordpress企业建seo技术优化技巧
  • 广州网站建设开发兰溪市建设局网站
  • 阿里云虚拟主机网站建设重庆网站空间键词排名
  • 企业网站推广阶段wordpress在空间
  • wordpress网站底部版权代码网络平台制作公司
  • 建设工程资讯哪个网站好微信开发有哪两种
  • 做谐和年龄图的网站深圳小蚁人网站建设
  • 网站建设管理风险钓鱼平台设计
  • 做网站的框架有个人做百度云下载网站吗
  • 网站建设优化的书籍怎么做网络广告
  • 企业网站开发价优质服务的网站设计制作
  • nodejs网站开发实例山西电力建设一公司网站
  • 企业网站管理系统排名域名怎么卖
  • 泊头网站排名优化搜索引擎优化的常用方法
  • 丹东企业做网站wordpress 图床加速