Given two strings s and t which consist of only lowercase letters. String t is generated by random shuffling string s and then add one more letter at a random position. Find the letter that was added in t. Example: Input: s = "abcd" t = "abcde" Output: e Explanation: ‘e‘ is the letter that was added.
题意:字符串s和t,t是s随记洗牌后多加了一个字母组成的,找出那个多加的字母。
public class Solution {
public char findTheDifference(String s, String t) {
char[] s1=s.toCharArray();
int sum=0;
for(int i=0;i<s1.length;i++){
sum+=s1[i];
}
char[] s2=t.toCharArray();
int sum1=0;
for(int i=0;i<s2.length;i++){
sum1+=s2[i];
}
int cha=sum1-sum-97;
return (char)(‘a‘+cha);
}
}PS:我直接算的acsll码。。。。。。
一开始因为char和int的类型强弱关系出了点麻烦。char类型低于int,所以把两者放一起时会变为int,要加char进行强制转换。
Leetcode 389. Find the Difference JAVA语言
原文:http://fulin0532.blog.51cto.com/6233825/1890581