zoukankan      html  css  js  c++  java
  • 剑指offer 44.知识迁移能力 翻转单词顺序列

    题目描述

    牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。
    同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。
    例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。
    Cat对一一的翻转这些单词顺序可不在行,你能帮助他么?
     

    解题思路

    先将该字符串通过split转化为字符串数组,然后遍历数组,把数字的每个单词添加进stack中,再一次pop出,用StringBuilder拼接即可。
     

    代码如下

     public String ReverseSentence(String str) {
          if(str.trim().equals("")){
              return str;
          }
          else {
              String[] strings=str.split(" ");
              Stack<String> stack=new Stack<String>();
              for (int i = 0; i < strings.length; i++) {
                stack.add(strings[i]);
            }
              StringBuilder sb=new StringBuilder();
              while (!stack.isEmpty()) {
                sb.append(stack.pop()+" ");
            }
              return sb.toString().trim();     
            }
          
        }
  • 相关阅读:
    甲级1008 Elevator
    甲级1004 Counting Leaves
    甲级1007 Maximum Subsequence Sum
    甲级1006 Sign In and Sign Out
    甲级1005 Spell It Right
    甲级1003 Emergency
    甲级1002. A+B for Polynomials
    ..
    使用git版本管理打包增量更新包
    c++实现互斥锁
  • 原文地址:https://www.cnblogs.com/Transkai/p/11381190.html
Copyright © 2011-2022 走看看