[#004] 387. First Unique Character in a String


Posted by s1101192101 on 2021-05-13

  • link:
    leetcode

  • 解題思路:

    1. 建立一個 0~25 的陣列 letters ,用來做每個英文字母的 counter
    2. 逐一讀取 s 中的字元,並使用 letters 做每個英文字母的計數
    3. 逐一讀取 s 中的字元,若該字元計數為 1 則回傳當前位置

  • 程式碼:

/**
 * @param {string} s
 * @return {number}
 */
const firstUniqChar = function(s) {
  let letters = Array(26).fill(0);

  for (var i = 0; i < s.length; i++) {
    letters[s[i].charCodeAt(0) - 97]++;
  }

  for (var i = 0; i < s.length; i++) {
    if (letters[s[i].charCodeAt(0) - 97] === 1) {
      return i;
    }
  }

  return -1;
};


  • 結果:



#Leetcode #string #easy







Related Posts

Rails API 學習紀錄 (Part 1)

Rails API 學習紀錄 (Part 1)

What is the concept of handle in Java?

What is the concept of handle in Java?

Switch between uppercase to lowercase

Switch between uppercase to lowercase


Comments