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