【Leetcode做題記錄】9. 回文數(shù),344. 反轉(zhuǎn)字符串,387. 字符串中的第一個唯一字符

9. 回文數(shù)

題目描述及官方解讀: https://leetcode-cn.com/problems/palindrome-number/solution/

一開始只想到轉(zhuǎn)為字符串再判斷

class Solution {
    public boolean isPalindrome(int x) {
        if(x==0){
            return true;
        }
        String a = String.valueOf(x);
        if (a.equals(f(a))) {
            return true;

        } else {
            return false;
        }
    }

    public static String f(String s) {
          if(s==null||s.length()<=1){
            return s;
        }
           return f(s.substring(1)) + s.charAt(0);
    }
}

344. 反轉(zhuǎn)字符串

題目描述: https://leetcode-cn.com/problems/reverse-string/

編寫一個函數(shù)椭蹄,其作用是將輸入的字符串反轉(zhuǎn)過來镊绪。

示例 1:
輸入: "hello"
輸出: "olleh"
示例 2:
輸入: "A man, a plan, a canal: Panama"
輸出: "amanaP :lanac a ,nalp a ,nam A"

此題實現(xiàn)思路總體分兩種坟瓢,遞歸與從后往前遍歷

思路1:遍歷
class Solution {
    public String reverseString(String s) {
        if (s == null||s.length()==0) {
            return "";
        }
        char[] c = new char[s.length()];
        int f = 0;
        for (int i = s.length() - 1; i > -1; i--) {
            c[f++] = s.charAt(i);
        }
        return new String(c);
    }
}

可使用charAt() 或 將字符串轉(zhuǎn)化為字符數(shù)組咙边。

思路2:遞歸

這里要注意遞歸的終止條件产还,當僅剩余一個字符時部凑,返回該字符本身

 public static String reverseString(String s) {
        if(s==null||s.length()<=1){
            return s;
        }
        return reverseString(s.substring(1)) + s.charAt(0);
    }

387. 字符串中的第一個唯一字符

題目描述:https://leetcode-cn.com/problems/first-unique-character-in-a-string/

給定一個字符串蘸吓,找到它的第一個不重復的字符,并返回它的索引。如果不存在库继,則返回 -1葬燎。
案例:
s = "leetcode"
返回 0.
s = "loveleetcode",
返回 2.

思路1:使用Hashmap

遍歷第一遍:將字符作為Key,value用來記錄是否出現(xiàn)過。
遍歷第二遍:輸出第一個未出現(xiàn)第二遍的字符

class Solution {
    public int firstUniqChar(String s) {
        Map<Character,Integer> map = new HashMap<>();
        for(Character c:s.toCharArray()){
            if(map.containsKey(c)){
                map.put(c,map.get(c)+1);
            }else {
                map.put(c,1);
            }
        }
        for(int i=0;i<s.length();i++){
            if(map.get(s.charAt(i))==1){
                return i;
            }
        }
        return -1;
    }
}
思路2:由于范圍是小寫字母拌汇,可以用數(shù)組來記錄每個字符的出現(xiàn)次數(shù)

也是遍歷兩遍柒桑,一遍記錄,一遍用來輸出第一個出現(xiàn)一次的字符噪舀。

class Solution {
    public int firstUniqChar(String s) {
        int[] word = new int[26];
        for(int i = 0; i < s.length(); i++){
            word[s.charAt(i)-'a']++;
        }
        for(int i = 0; i < s.length(); i++){
            if(word[s.charAt(i)-'a']==1)
                return i;
        }
        return -1;
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末魁淳,一起剝皮案震驚了整個濱河市飘诗,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌界逛,老刑警劉巖昆稿,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異仇奶,居然都是意外死亡貌嫡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進店門该溯,熙熙樓的掌柜王于貴愁眉苦臉地迎上來岛抄,“玉大人,你說我怎么就攤上這事狈茉》蛲郑” “怎么了?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵氯庆,是天一觀的道長蹭秋。 經(jīng)常有香客問我,道長堤撵,這世上最難降的妖魔是什么仁讨? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮实昨,結(jié)果婚禮上洞豁,老公的妹妹穿的比我還像新娘。我一直安慰自己荒给,他們只是感情好丈挟,可當我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著志电,像睡著了一般曙咽。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上挑辆,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天例朱,我揣著相機與錄音,去河邊找鬼鱼蝉。 笑死茉继,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的蚀乔。 我是一名探鬼主播,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼菲茬,長吁一口氣:“原來是場噩夢啊……” “哼吉挣!你這毒婦竟也來了派撕?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤睬魂,失蹤者是張志新(化名)和其女友劉穎终吼,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體氯哮,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡际跪,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了喉钢。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片姆打。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖肠虽,靈堂內(nèi)的尸體忽然破棺而出幔戏,到底是詐尸還是另有隱情,我是刑警寧澤税课,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布闲延,位于F島的核電站,受9級特大地震影響韩玩,放射性物質(zhì)發(fā)生泄漏垒玲。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一找颓、第九天 我趴在偏房一處隱蔽的房頂上張望合愈。 院中可真熱鬧,春花似錦叮雳、人聲如沸想暗。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽说莫。三九已至,卻和暖如春寞焙,著一層夾襖步出監(jiān)牢的瞬間储狭,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工捣郊, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留辽狈,地道東北人。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓呛牲,卻偏偏與公主長得像刮萌,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子娘扩,可洞房花燭夜當晚...
    茶點故事閱讀 44,864評論 2 354

推薦閱讀更多精彩內(nèi)容