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

台州网站优化公司百度一下你就知道手机版

台州网站优化公司,百度一下你就知道手机版,引流推广接单,襄阳门户网站建设151.给你一个字符串 s ,请你反转字符串中 单词 的顺序。 单词 是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的 单词 分隔开。 返回 单词 顺序颠倒且 单词 之间用单个空格连接的结果字符串。 注意:输入字符串 s中可能会存在前导空格、尾随…

151.给你一个字符串 s ,请你反转字符串中 单词 的顺序。
单词 是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的 单词 分隔开。
返回 单词 顺序颠倒且 单词 之间用单个空格连接的结果字符串。
注意:输入字符串 s中可能会存在前导空格、尾随空格或者单词间的多个空格。返回的结果字符串中,单词间应当仅用单个空格分隔,且不包含任何额外的空格。
示例 1:
输入:s = “the sky is blue”
输出:“blue is sky the”
示例 2:
输入:s = " hello world "
输出:“world hello”
解释:反转后的字符串中不能存在前导空格和尾随空格。
示例 3:
输入:s = “a good example”
输出:“example good a”
解释:如果两个单词间有多余的空格,反转后的字符串需要将单词间的空格减少到仅有一个。

  • 我的原始人解法:空格不用理会,只要把每个单词提取出来,然后拼接的时候中间加上空格即可,顺序遍历字符串时,因为要反转字符串,所以把单词存入栈。
  •   public String reverseWords(String s) {s=s.trim();Stack<StringBuilder> stack = new Stack<>();StringBuilder sb = new StringBuilder();for(int i=0;i<s.length();i++){// 遇到空格就结算一次单词,所以提前 trim 了if(s.charAt(i)==' '){stack.push(sb);sb=new StringBuilder();}// 把空格都清完while(s.charAt(i)==' '){i++;}sb.append(s.charAt(i));// 最后一个单词别忘了加入栈if(i==s.length()-1)stack.push(sb);}sb = new StringBuilder();while(!stack.isEmpty()){sb.append(stack.pop());sb.append(" ");}return sb.toString().trim();}
    
  • 他人解法1:思路大致一致,但是截取手段高明不少,用双指针指向每个单词首尾,从尾部开始遍历,头指针从后往前移动到空格时,头指针后一位到尾指针就为一个单词,类似于遇到空格就结算一次单词,所以也提前 trim 了。然后直接把单词加个空格拼接起来(最后结果也 trim 就行)。然后也一样让头指针继续往前移动,直到遇到字母(或者说直到把空格都跳过),更新尾指针,重复操作即可。
  •   public String reverseWords(String s) {s=s.trim();StringBuilder sb = new StringBuilder();int end = s.length()-1,start=end;while(start>=0){while(start>=0 && s.charAt(start)!=' ')start--;sb.append(s.substring(start+1,end+1)+" ");// 下面两步操作完以后就又和最开始的状态一样了// 即首尾指针都指向某个单词尾部的状态while(start>=0 && s.charAt(start)== ' ')start--;end=start;}return sb.toString().trim();}
    
  • 他人解法2:api调用大师,直接 split 然后就能拼接了
  •   public String reverseWords(String s) {String[] strs = s.trim().split(" ");        // 删除首尾空格,分割字符串StringBuilder res = new StringBuilder();for (int i = strs.length - 1; i >= 0; i--) { // 倒序遍历单词列表if(strs[i].equals("")) continue;        // 遇到空单词则跳过res.append(strs[i] + " ");              // 将单词拼接至 StringBuilder}return res.toString().trim();               // 转化为字符串,删除尾部空格,并返回}
    
http://www.ds6.com.cn/news/93789.html

相关文章:

  • 检测网站建设seo排名需要多少钱
  • php网站开发环境论文网站建设优化400报价
  • 中介网站制度建设关键词排名怎样
  • 国内联盟wordpress插件淄博网站优化
  • 做网站 用什么语言好百度竞价sem
  • wordpress点赞出现空白页厦门谷歌seo
  • 高港做网站百度关键词价格查询软件
  • 那个做图网站叫什么semantics
  • 郑州市人民政府官方网站今天的新闻有哪些
  • 给网站做排名优化学什么好沈阳seo排名收费
  • 建设一个电影网站怎么做广东seo排名
  • 建设银行车贷网站365优化大师软件下载
  • 做网站怎么做呀seo排名分析
  • 网站开发小程序定制厦门seo公司
  • 做黄金的经常看什么网站本地推广最好用的平台
  • 大学教学应用网站开发现状做广告推广哪个平台好
  • 深圳市坪山新区建设局网站学seo网络推广
  • 做美国直邮物流网站手机关键词seo排名优化
  • 做网站还是做淘宝营销方案怎么写
  • 顺德网站制作案例价格电商运营主要负责什么
  • 客户评价网站建设网站排名查询工具
  • 如何查询网站注册信息查询2020年可用好用的搜索引擎
  • wordpress 搜索不能用seo优化培训课程
  • 邯郸做wap网站建设免费网站开发平台
  • 杭州外贸网站建设重庆关键词排名推广
  • 证书兼职的人才网站电商网站平台
  • 海外网络推广招聘佛山seo网站排名
  • 网站开发公司需要投入什么资源在线优化网站
  • 微信app网站建设品牌传播推广方案
  • asp网站版权站长工具 seo查询