leetcode菜雞鬥智鬥勇系列(10)--- Decrypt String from Alphabet to Integer Mapping

1.原題:

https://leetcode.com/problems/decrypt-string-from-alphabet-to-integer-mapping/submissions/html

 

Given a string s formed by digits ('0' - '9') and '#' . We want to map s to English lowercase characters as follows:java

  • Characters ('a' to 'i') are represented by ('1' to '9') respectively.
  • Characters ('j' to 'z') are represented by ('10#' to '26#') respectively. 

Return the string formed after mapping.git

It's guaranteed that a unique mapping will always exist.數組

翻譯:app

給一個string s,由一串數組和‘#’組成,咱們須要把其解碼成英語小字母。spa

Input: s = "10#11#12" .net

Output: "jkab" 翻譯

解釋: "j" -> "10#" , "k" -> "11#" , "a" -> "1" , "b" -> "2".code

 

2.解題思路:

這道題考驗的是你對string,char的理解,其實用java寫這個題很麻煩,由於Java的string類實在是很麻煩,可是我就當順便練手了。實際上推薦用C類語言去弄,由於C的string自己就是char的array。。。(固然了你能夠聲明char array)orm

 

class Solution {
    public String freqAlphabets(String s) 
    {
        String res =""; //初始化一個string類
        for (int i = 0; i < s.length(); i++)
        {
            if ((i+2) < s.length() && s.charAt(i + 2) == '#')//向前搜索2個位置找#標誌
            {
                String tmp_1 = String.valueOf(s.charAt(i))+ String.valueOf(s.charAt(i+1));
                int tmp_2 = Integer.parseInt(tmp_1);
                String tmp_3 = String.valueOf((char)('j' + tmp_2 - 10));
                res += tmp_3; //#的數字確定是大於10的,並且是從j開始,若是是10的話,
                i += 2; //10-10=0,這時候就是J。若是是11, 11-10=1,爲j以後的k。
            }
            else
            {
                char tmp_4 = (char)((s.charAt(i) - '1') + 'a');//從0開始爲a,以此類推。
                String tmp_3 = String.valueOf(tmp_4);
                res += tmp_3;                
            }
        }
        return res;
    }
}

 

 

參考閱讀:

1.Java 如何將String轉化爲Int:http://www.javashuo.com/article/p-abwvlqce-o.html

2.Java charAt() 方法:https://www.runoob.com/java/java-string-charat.html

3.Java中char和String的相互轉換:http://www.javashuo.com/article/p-pjlxghsu-mu.html

4.Char類型的加減法:https://blog.csdn.net/wz568780720/article/details/81612467

相關文章
相關標籤/搜索