FRONT/JAVASCRIPT

[Javascript] 알고리즘 기본 문제 - 중복문자제거

연듀 2022. 3. 26. 11:23

16.중복문자제거

 

내 풀이

function solution(s) {
  let answer = "";

  const arr = s.split("");
  const set = new Set(arr);

  answer = Array.from(set).join("");

  return answer;
}

let str = "ksekkset";
console.log(solution(str));

 

Set 객체를 이용해 중복을 제거했다. 

 

 

선생님 풀이

function solution(s) {
  let answer = "";

  for (let i = 0; i < s.length; i++) {
    if (s.indexOf(s[i]) === i) answer += s[i];
  }

  return answer;
}

let str = "ksekkset";
console.log(solution(str));

indexOf 는 해당 문자가 위치한 가장 첫번째 인덱스를 반환하기 때문에

이를 이용하여 처음 등장한 문자들만 answer에 넣어준다. 

 

 

 

+특정 문자 개수 찾기

function solution(s) {
  let answer = 0;
  let pos = s.indexOf("k");
  while (pos !== -1) {
    answer++;
    pos = s.indexOf("k", pos + 1);
  }
  return answer;
}

let str = "ksekkset";
console.log(solution(str));