• 389. Find the Difference


    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,问加入的是哪个字母


    Bit Manipulation:

    C++(3ms):

    class Solution {
    public:
        char findTheDifference(string s, string t) {
            int res = t[t.size()-1] ;
            for(int i = 0 ; i < s.size() ; i++){
                res ^= s[i] ^ t[i] ;
            }
            return (char)res ;
        }
    };

    java(7ms):

    1 class Solution {
    2     public char findTheDifference(String s, String t) {
    3         char res = t.charAt(t.length()-1) ;
    4         for(int i = 0 ; i < s.length() ; i++){
    5             res ^= s.charAt(i) ^ t.charAt(i) ;
    6         }
    7         return res ;
    8     }
    9 }

    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 }

    C++(3ms):

     1 class Solution {
     2 public:
     3     char findTheDifference(string s, string t) {
     4         int sum = 0 ;
     5         int i ;
     6         for(i = 0 ; i < s.size() ; i++){
     7             sum -= (int)s[i] ;
     8             sum += (int)t[i] ;
     9         }
    10         sum += (int)t[i] ;
    11         return (char)sum ;
    12     }
    13 };
  • 相关阅读:
    数据库管理 trove openstack
    Vmware 给虚拟机传脚本并执行
    Vmware 控制脚本
    python 脚本之 IP地址探测
    python 模块之-ffmpeg 中文参数对照表
    VMware ezmomi工具使用
    VS编译器从DLL导出模板类
    Qt5+VS2012编程
    Visual Studio 2012优化
    计算几何
  • 原文地址:https://www.cnblogs.com/mengchunchen/p/6034280.html
Copyright © 2020-2023  润新知