leetcode-java-151. Reverse Words in a String
2016-06-29 09:46
183 查看
思路:
存储在一个数组中,倒置数组,但是空间是O(n)
误区:本来想直接首尾交换数组,
但是发现自己忽略了字符串中间空格多的时候,用了split(” “),会导致数组中很多“”
所以判断不是“”的时候,倒置连接了字符串
存储在一个数组中,倒置数组,但是空间是O(n)
误区:本来想直接首尾交换数组,
// for(;i < len/2;i++) { // String temp = strings[i]; // strings[i] = strings[len-1-i]; // strings[len-1-i] = temp; // } // result = String.join(" ",strings);
但是发现自己忽略了字符串中间空格多的时候,用了split(” “),会导致数组中很多“”
所以判断不是“”的时候,倒置连接了字符串
/*49ms*/ public class Solution { public String reverseWords(String s) { String[] strings = s.split(" "); String result = ""; int len = strings.length, i = len - 1; if(len == 1) { return strings[0]; } for(;i >= 0;i--) { if(!strings[i].equals("")) { result += strings[i] + " "; } } return result.trim(); } }
/*53ms*/ public class Solution { public String reverseWords(String s) { String[] strings = s.split(" +"); String result = ""; int len = strings.length, i = len - 1; if(len == 1) { return strings[0]; } for(;i >= 0;i--) { result += strings[i] + " "; } return result.trim(); } }
相关文章推荐
- struts2 入门训练2
- 解决eclipse更新SDK慢的问题
- Java Map按键排序和按值排序
- Java中初始化块和静态初始化块的区别
- 深度分析 Java 的枚举类型:枚举的线程安全性及序列化问题
- java里面的标识符、关键字和类型
- java 汉字转拼音(解决多音字问题)
- JavaCV安装过程
- JavaWeb文件上传与下载功能解析
- 简单的邮件开发4---Java
- 使用Spring AOP切面解决数据库读写分离
- 能够提高开发效率的Eclipse实用操作
- Java-解压和打包Jar
- java jar 打包命令
- java中String s=”abc“及String s=new String("abc")
- 使用java MapReduce job 批量导入大额数据到Hbase
- java 中final关键字(转)
- SpringMVC常用基础知识
- java垃圾收集器之G1收集器
- javax.swing