Daniel
close
프로필 배경
프로필 로고

Daniel

  • 분류 전체보기 (29)
    • FE (22)
      • Javascript (9)
      • NextJS (6)
      • React (5)
      • Trouble Shooting (1)
      • 면접 준비 (1)
    • 알고리즘 (7)
      • 백준 (7)
      • 프로그래머스 (0)
      • LeetCode (0)
  • 홈
  • 태그
  • 방명록
[BOJ] 2206번 - 벽 부수고 이동하기

[BOJ] 2206번 - 벽 부수고 이동하기

🔥 접근초기 접근 (시간/메모리 초과)최단 거리를 구하는 문제이므로 BFS를 사용한다.모든 벽(1)을 하나씩 제거한 후, 매번 BFS를 돌린다.BFS 실행 시에는 visited 배열에 각 위치의 이동 거리(step) 를 저장한다.BFS가 끝난 후 visited[N-1][M-1]의 값이 0이 아니면, 도착한 것으로 간주하고 값을 수집한다.모든 벽 제거 케이스에 대해 결과를 모은 뒤:0을 제외한 값들 중 최소 거리를 반환하고,유효한 값이 없다면 -1을 반환한다.문제점: 모든 벽에 대해 BFS를 반복 실행하므로 시간복잡도가 O(N² × BFS)가 되어시간 초과 / 메모리 초과가 발생했다. --- 최적화된 접근 (정답 통과)여전히 BFS를 사용하지만, 벽을 한 번 부술 수 있는 상태를 BFS 상태에 포함시킨다..

  • format_list_bulleted 알고리즘/백준
  • · 2025. 4. 8.
  • textsms
[BOJ] 2504번 - 괄호의 값

[BOJ] 2504번 - 괄호의 값

🔥 접근스택에 현재 문자의 정보(문자와 인덱스)를 push하면서, 스택의 마지막 두 문자가 유효한 괄호 쌍이라면 pop 한다.() 쌍이 완성되면 값 2,[] 쌍이 완성되면 값 3을 할당하여 nums 배열에 저장한다.이때 저장하는 값에는 괄호 쌍의 시작 인덱스와 끝 인덱스(range) 도 함께 저장한다.괄호 쌍의 range에 따라 연산 방식을 결정한다.괄호 쌍의 범위 길이가 1이라면 단순한 괄호 쌍이므로 덧셈 대상이 된다.범위 길이가 1보다 크다면, 내부에 포함된 이전 값을 곱 연산 처리한다.이때, nums 배열에서 해당 범위에 완전히 포함되는 값들을 찾아 곱셈 연산을 적용한다.모든 괄호 쌍을 처리한 뒤 스택에 요소가 남아 있다면, 유효하지 않은 괄호 문자열이므로 결과는 0이다.유효한 괄호 쌍들의 값을 ..

  • format_list_bulleted 알고리즘/백준
  • · 2025. 4. 7.
  • textsms
실행 컨텍스트에 대해서 설명해주세요.

실행 컨텍스트에 대해서 설명해주세요.

실행 컨텍스트에 대해서 설명해주세요.실행 컨텍스트란 코드가 실행되는 환경입니다. 자바스크립트 엔진이 코드를 실행할 때, 그 코드가 실행될 때의 환경을 정의하고 관리하기위해 존재합니다.실행 컨텍스트는 전역 실행 컨텍스트, 함수 실행 컨텍스트로 나뉩니다.전역 실행 컨텍스트는 자바스크립트가 처음 실행될때 생성되는 컨텍스트입니다. 이는 프로그램이 종료될 때까지 유지되며 전역에 선언된 변수나 함수가 모두 포함됩니다. 전역 컨텍스트에서 선언된 변수와 함수는 프로그램 내 어디서든 접근 가능합니다.자바스크립트는 싱글 스레드 이기 때문에 전역 실행 컨텍스트는 1개만 존재합니다.함수 실행 컨텍스트는 함수가 호출될 때 마다 생성되는 컨텍스트입니다. 각 함수는 자신만의 실행 컨텍스트를 가지며 이 컨텍스트 내에서 선언된 변수와..

  • format_list_bulleted FE/면접 준비
  • · 2025. 4. 2.
  • textsms
NextJS 공식문서 파헤치기 (Middleware)

NextJS 공식문서 파헤치기 (Middleware)

0️⃣ INTROMiddleware를 사용하면 요청이 완료되기 전에 코드 실행 가능그 후에 들어오는 요청에 따라 응답을 재작성, 리디렉션, 요청 또는 응답 헤더 수정 또는 직접 응답할 수 있다.Middleware는 캐시된 콘텐츠와 라우트가 일치하기 전에 실행된다.1️⃣ Use Cases일반적인 시나리오인증 및 권한 부여: 사용자 신원을 확인하고 특정 페이지나 API 라우트에 접근하기 전에 세션 쿠키 확인서버 측 리디렉션: 특정 조건에 따라 서버 수ㅜㄴ에서 사용자를 리디렉션경로 재작성: 요청 속성에 따라 경로를 동적으로 재작성하여 A/B 테스트, 기능 출시 또는 레거시 경로를 지원봇 감지: 리소스를 보호하기 위해 봇 트래픽을 감지하고 차단로깅 및 분석: 페이지나 API가 처리되기 전에 요청 데이터를 캡처하..

  • format_list_bulleted FE/NextJS
  • · 2024. 12. 17.
  • textsms
NextJS 공식문서 파헤치기 (Error Handling)

NextJS 공식문서 파헤치기 (Error Handling)

0️⃣ INTRO에러는 예상된 에러와 예상치 못한 예외 두가지로 나눌 수 있다.예상된 에러를 반환 값으로 모델링: 서버 액션에서 예상된 에러를 try/catch 문 보다는 useActionState를 사용하여 에러를 관리하고 클라이언트에 반환하는것이 좋다.예상치 못한 에러는 에러 경계로 처리: error.tsx, global-error.tsx 파일을 사용해 에러 경계를 구현하고 에러를 처리한다.❓ useActionState ❓- React v19 에 정식 도입된 훅으로서 폼 작업의 결과에 따라 상태를 업데이트할 수 있다.- 기존의 폼 액션 함수와 초기 state를 전달받고, 폼에서 사용할 새로운 액션을 반환한다.- 최신 폼 state와 액션이 여전히 진행(Pending) 중인지 여부도 반환한다.impor..

  • format_list_bulleted FE/NextJS
  • · 2024. 12. 10.
  • textsms
13. 모던 자바스크립트 Deep Dive(스코프)

13. 모던 자바스크립트 Deep Dive(스코프)

⛅ 스코프란?스코프는 변수와 함수에 깊은 관련이 있다.모든 식별자는 자신이 선언된 위치에 의해 다른 코드가 식별자 자신을 참조할 수 있는 유효범위가 결정되는데, 이를 스코프라고 한다.스코프 => 식별자가 유효한 범위!!자바스크립트 엔진이 식별자를 검색할 때 사용하는 규칙!자바스크립트 엔진은 코드를 실행할 때 코드의 문맥을 고려함스코프라는 것이 없다면 프로그램 전체에서 동일한 변수의 이름은 하나밖에 사용하지 못하게 됨!스코프 내에서 식별자는 유일해야 하지만, 다른 스코프에는 같은 이름의 식별자 사용 가능!(스코프 == 네임스페이스)이때 var 키워드는 같은 스코프내에 중복 선언이 가능하기때문에 유의해야함! 👀// 자바스크립트 엔진은 이름이 같은 두 개의 변수 중에서 어떤 변수를 참조해야 할것인지를 결정/..

  • format_list_bulleted FE/Javascript
  • · 2024. 12. 8.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • 5
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (29)
    • FE (22)
      • Javascript (9)
      • NextJS (6)
      • React (5)
      • Trouble Shooting (1)
      • 면접 준비 (1)
    • 알고리즘 (7)
      • 백준 (7)
      • 프로그래머스 (0)
      • LeetCode (0)
최근 글
인기 글
최근 댓글
태그
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바