[TIL] 241113 (Next.js 실무 강의 타입을 선언하는 방법 / 프로그래머스 접미사 배열)

·2024년 11월 13일

TIL

목록 보기
218/268
post-thumbnail

오늘 한 일

  • 기술면접 4개
  • 기업지원 7건
  • Next.js 실무 강의
    • 1-2 타입을 선언하는 방법 수강 완료
  • 알고리즘 코드카타
    • 접미사 배열

알고리즘 코드카타

접미사 배열

문제

어떤 문자열에 대해서 접미사는 특정 인덱스부터 시작하는 문자열을 의미합니다. 예를 들어, "banana"의 모든 접미사는 "banana", "anana", "nana", "ana", "na", "a"입니다.
문자열 my_string이 매개변수로 주어질 때, my_string의 모든 접미사를 사전순으로 정렬한 문자열 배열을 return 하는 solution 함수를 작성해 주세요.

풀이

function solution(my_string) {
  const result = [];
  for (let i = 0; i < my_string.length; i++) {
    result.push(my_string.slice(i));
  }
  return result.sort();
}

전에 배운대로, slice 메서드를 통해 간단하게 i번째부터 끝까지 slice한 my_string을 반복문으로 result에 push 해준 다음 result를 sort()하여 간단히 풀 수 있는 문제였다.

기술면접 연습

프로세스와 스레드에 대해 설명해주세요.
프로세스와 스레드는 컴퓨터 운영체제에서 작업을 실행하는 기본 단위입니다. 둘의 차이점은 작업을 실행하는 환경에 있는데, 프로세스는 현재 실행 중인 프로그램의 실행 단위이고, 스레드는 프로세스 내 작업의 실행 단위입니다.

혹시 웹 보안에서 XSS 공격이나 CSRF 공격에 대해서 알고 계신가요?
XSS는 Cross Site Scripting으로 해커가 특정 스크립트를 웹 페이지에 삽입하여 해당 페이지를 접속하는 유저에세 특정 스크립트를 실행하도록 하는 공격입니다. 이를 방지하기 위해서는 html-sanitizer를 통해 유저의 입력을 필터링하는 방법이 있습니다.

HTTP 메서드 중 GET, POST 방식의 차이점에 대해서 설명해주세요.
GET은 READ, POST는 CREATE라고 볼 수 있습니다. GET 메서드는 주로 데이터를 불러올 때 사용되고 POST는 주로 데이터를 서버로 보낼 때 사용합니다.

TCP와 UDP를 비교해서 설명해주세요.
TCP와 UDP는 모두 네트워크 프로토콜이지만, 특징은 정 반대입니다. TCP는 데이터의 손실이 없는 완전한 전송을 보장하는 대신 속도가 느립니다. 때문에 신뢰도가 높아야하는 애플리케이션에 적합합니다. UDP는 데이터가 손실될 수 있지만 빠른 속도를 보장합니다. 때문에 데이터 손실이 있어도 상관 없고 속도가 중요한 곳에 적합합니다. 예를 들어 실시간 스트리밍이 있습니다.

profile
웹 프론트엔드 개발자

0개의 댓글