-1

如何对由空格分隔的字符串中的元素进行排序。我有以下字符串:

  temp = abcd bcda gfre dfgre fwft efwe

   //temp.size() gives 30
   //after the sort temp should look like ie temp = abcd bcda dfgre efwe fwft gfre

我需要在最短的时间内对 temp 中的元素进行排序。请注意,我正在处理的 temp 的大小约为 10 的 7 次方。我忘了提到我已经尝试过 Collections.sort 和 Array .sort 花费的时间比要求的要多。我需要的是比这更快的算法吗?

4

2 回答 2

2
  1. 使用拆分字符串.split(seperator)
  2. 使用集合排序Arrays.sort()
于 2013-07-10T20:01:22.950 回答
1
String [] array = temp.split("\\s+"); // split by whitespace
Arrays.sort(array); // sort using mergesort with insertionsort

StringBuilder sb = new StringBuilder(temp.length());

 for(String s : array){
     sb.append(s).append(" "); 
 }

temp = sb.toString(); // assign temp the new string 
于 2013-07-10T19:59:48.923 回答