题解-翻转单词顺序列

翻转单词顺序列

http://www.nowcoder.com/questionTerminal/3194a4f4cf814f63919d0790578d51f3

直接以单词为单位进行翻转就可以了,不知道为什么都是清一色的翻转两次..
非法判断比较坑,要注意:

  • 遇到" "要用trim()去除多余的空格,才能用equals判断
  • 返回str,不要直接返回""
public String ReverseSentence(String str) {
    if(str == null || str.length() == 0) return str;
    str = str.trim();
    String[] arr = str.split(" ");
    int length = arr.length;
    int low = 0, high = length - 1;
    while(low < high){
        String tmp = arr[low];
        arr[low] = arr[high];
        arr[high] = tmp;
        low++;
        high--;
    }
    StringBuilder s = new StringBuilder();
    for(int i = 0; i < length - 1; i++){
        s.append(arr[i] + " ");
    }
    s.append(arr[length - 1]);
    return s.toString();
}
全部评论

相关推荐

投递美团等公司10个岗位
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务