Codewars Solution:Two to One

2020-05-21 16:05:30来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

Codewars Solution:Two to One

Level 7kyu :Two to One

取2个字符串s1s2仅包含从a到的字母z

返回一个新的排序字符串,最长的字符串,包含不同的字母,

  • 每个仅取一次-来自s1或s2。

主要方法:

toCharArray()->字符串转字符数组

arraycopy(from,0,to,0,长度)->复制数组

Arrays.sort()->对数组元素进行排序

 1 import java.util.Arrays;
 2 public class TwoToOne {
 3     public static String longest (String s1, String s2) {
 4         // your code
 5         //把两个字符串拼接成一个字符串
 6         String s=s1+s2;
 7         char[] a=s.toCharArray();//字符串转字符数组
 8         char[] temp = new char[a.length];
 9         int index=0;//临时数组下标索引
10         for(int i=0;i<a.length;i++){
11           boolean flag=true;//是否重复的标志
12           for(int j=i+1;j<a.length;j++){
13             if(a[i]==a[j]){
14               flag=false; 
15               break;
16             }
17           }
18           if(flag){
19             temp[index]=a[i];//后面没有发现重复元素就赋值给临时数组
20             index++;
21           }
22         }
23         char[] newArr = new char[index];
24         System.arraycopy(temp, 0, newArr, 0, index);//复制临时到新数组
25         Arrays.sort(newArr);//引用排序函数
26         String total="";
27         for(int i=0;i<newArr.length;i++){
28           total+=newArr[i];//每个元素以字符串结果相加
29         }
30         return total;
31     }
32 }

 


原文链接:https://www.cnblogs.com/mc-web/p/12930648.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:org.apache.jasper.JasperException: java.lang.NullPointerExce

下一篇:备战面试,牢记这份Java面经,大厂在向你招手「含PDF文档资料」