码迷,mamicode.com
首页 > 其他好文 > 详细

389. Find the Difference

时间:2016-11-06 01:47:32      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:随机   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 }

 

389. Find the Difference

标签:随机   array   nbsp   random   ted   cas   ++   class   java   

原文地址:http://www.cnblogs.com/-Buff-/p/6034280.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!