标签:随机 array nbsp random ted cas ++ class java
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是一串随机的字符串,将s的每个字母打乱后,再加入一个字母,形成字符串t,问加入的是哪个字母
java(6ms):
1 public class Solution { 2 public char findTheDifference(String s, String t) { 3 char[] ss = s.toCharArray() ; 4 char[] tt = t.toCharArray() ; 5 int slen = s.length() ; 6 int sum = 0 ; 7 int i ; 8 for (i = 0 ; i < slen ; i++){ 9 sum -= (int)ss[i] ; 10 sum += (int)tt[i] ; 11 } 12 sum += (int)tt[i] ; 13 14 return (char)sum; 15 } 16 }
java(5ms):
1 public class Solution { 2 public char findTheDifference(String s, String t) { 3 char[] ss = s.toCharArray() ; 4 char[] tt = t.toCharArray() ; 5 int slen = s.length() ; 6 int sum = 0 ; 7 int i ; 8 for (i = 0 ; i < slen ; i++){ 9 sum ^= ss[i] ^ tt[i] ; 10 } 11 sum ^= tt[i] ; 12 13 return (char)sum; 14 } 15 }
标签:随机 array nbsp random ted cas ++ class java
原文地址:http://www.cnblogs.com/-Buff-/p/6034280.html