[Programmers] 한 번만 등장한 문자

Jinny·2025년 1월 10일
0
  • 날짜 / 주차-누적 횟수: 2025.01.08(수) / 2주차-15회
  • 사이트 이름: 프로그래머스
  • 사용 언어: 자바스크립트
  • 문제 고유 번호 및 레벨: 120896 / Lev 0
  • 나의 풀이 방법: 못품
  • 최적 풀이 방법:
    
    function solution(s) {
        let result = [];
        for (let c of s) {
            if (s.indexOf(c) === s.lastIndexOf(c)) result.push(c)
        }
        
        return result.sort().join('');
    }
    
    • for of 문으로 s의 요소를 하나씩 순회한다.
      • 순회할 때 s문자열 안에 해당 요소의
        • indexOf로 처음부터 찾는 인덱스를 찾는다.
        • lastIndexOf로 마지막 부터 찾는 인덱스를 찾는다.
      • 값이 값다면? 1개만 존재하는 문자열이다.
        • 문자열을 찾으면 result로 push 한다.
      • sort()하여 사전순으로 정렬을 한다.
  • 배운 개념:
    • for of 문은 배열 뿐 아니라 문자열도 가능하다.
    • indexOf(검색할 값, 시작 위치) - 앞에서부터 검색할 값을 찾기 시작하는 속성
      • 여기서 시작할 위치가 생략이 될 경우에는 시작위치의 값을 0으로 인식하여 처음부터 검색을 시작한다.
      • 위치하는 결과값이 없을 경우에는 -1을 리턴한다.
    • lastIndexOf(검색할 값, 시작 위치) - 끝에서부터 검색할 값을 찾기 시작
      • lastIndexOf는 말 그대로 검색을 앞에서가 아니라 뒤에서부터 찾기 시작한다.
      • 여기서도 시작 위치가 생략이 되었다고 하면 맨 끝에서부터 검색을 시작한다.
profile
세상을 이롭게 하는 프론트엔드 개발자 Jinny

0개의 댓글

관련 채용 정보