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

Daniel

  • 분류 전체보기 (38)
    • FE (26)
      • Javascript (11)
      • NextJS (6)
      • React (7)
      • Trouble Shooting (1)
      • 면접 준비 (1)
    • 알고리즘 (9)
      • 백준 (7)
      • 프로그래머스 (0)
      • LeetCode (0)
      • 알고리즘 메모장 (2)
    • 우아한테크코스 (3)
      • 프리코스 (3)
  • 홈
  • 태그
  • 방명록
[알고리즘] BFS, DFS

[알고리즘] BFS, DFS

BFS- 모든 노드를 너비를 우선으로 방문하기 위한 알고리즘- 모든 간선의 길이가 동일한 상황에서 두 지점 사이의 거리를 찾는 문제는 BFS로 해결 가능- 인접 리스트, 인접 행렬로 풀이 가능 BFS 연결 그래프 순회 (인접 리스트 방식)const adj = new Array(10).fill(0).map(() => []);const vis = new Array(10).fill(false);function bfs() { const q = []; // 시작 노드를 큐에 넣고 방문 처리 q.push(1); vis[1] = true; // 큐가 비어있지 않은 동안 반복 while (q.length > 0) { // 큐의 맨 앞 노드를 가져오기 const cur = q.shift(); ..

  • format_list_bulleted 알고리즘/알고리즘 메모장
  • · 2025. 9. 10.
  • textsms
[자료구조] 그래프

[자료구조] 그래프

정의- 정점과 간선으로 이루어진 자료구조- 원소사이의 연결관계를 설정해야 하는 상황에서 유용함 종류1. 무방향 그래프 - 간선에 방향성이 없음- 차수(degree)는 이웃한 정점의 개수를 나타냄2. 방향 그래프 - 간선에 방향성이 있음- outdegree: 나가는 간선의 개수- indegree: 들어오는 간선의 개수 3. 순환 그래프 - 간선에의해 사이클이 형성되는 그래프4. 비순환 그래프 - 간선의 방향성에 의해 사이클이 형성되지 않음 5. 완전 그래프 - 모든 두 정점 쌍이 간선으로 연결된 그래프6. 연결 그래프 - 임의의 두 정점 사이의 경로가 항상 존재하는 그래프 표현법1. 인접 행렬- 구현 방법: V x V의 2차원 배열 선언 후 연결된 두 정점에는 1을 연결되지 않은 두 정점에는 0을 할당- ..

  • format_list_bulleted 알고리즘/알고리즘 메모장
  • · 2025. 9. 9.
  • textsms
[Javascript] 실행 컨텍스트 복습

[Javascript] 실행 컨텍스트 복습

소스코드의 평가와 실행- 소스코드 평가 - 실행 컨텍스트 생성 - 변수, 함수 등의 선언문 실행 -> 렉시컬 환경의 환경 레코드에 등록 - 소스코드 실행 (런타임) - 실행에 필요한 정보를 렉시컬 스코프에서 검색 실행 컨텍스트의 역할1. 코드 실행 순서 관리 - 실행 컨텍스트 스택으로 관리 - 현재 실행 중인 코드의 실행 순서를 변경 가능(ex 함수 호출에 의한 실행 순서 변경) 2. 스코프 관리(식별자 관리) - 렉시컬 환경으로 관리 - 선언에 의해 생성된 모든 식별자를 스코프를 구분하여 등록 - 스코프는 중첩 관계에 의해 스코프 체인을 형성 -> 상위 스코프로 이동하며 식별자 검색 가능 실행 컨텍스트 스택> 코드의 실행 순서를 관리> 소스코드 평가 -> 실행 컨텍스트 생성 -> 실행 ..

  • format_list_bulleted FE/Javascript
  • · 2025. 9. 7.
  • textsms
[Javascript] this 복습

[Javascript] this 복습

this 개념- 자신이 속한 객체, 자신이 생성할 인스턴스를 가리키는 식별자 (자기 참조 변수)- this 바인딩은 함수 호출 방식에 따라 동적으로 결정된다.- 자바스크립트 엔진이 암묵적으로 생성함 호출 방식에 따른 this 바인딩1. 객체 리터럴 → 메서드를 호출한 객체를 가리킨다const circle = { radius: 5, getDiameter() { return 2 * this.radius; }}console.log(circle.getDiameyer()); // 10 2. 생성자 함수 → 생성자 함수가 생성할 인스턴스를 가리킨다function Circle(radius) { this.radius = radius;}Circle.prototype.getDiameter = function(..

  • format_list_bulleted FE/Javascript
  • · 2025. 8. 4.
  • textsms
[Javascript] 프로토타입 복습

[Javascript] 프로토타입 복습

프로토타입 개념- 자바스크립트는 프로토타입을 기반으로 상속을 구현 -> 코드 재사용에 용이- 생성자 함수는 동일한 프로퍼티(메서드 포함) 구조를 갖는 객체를 여러 개 생성할 때 유용- 생성자 함수에서 this로 할당된 프로퍼티,메서드는 인스턴스가 생성될때 할당된다.// 아래 Circle 생성자 함수의 getArea는 모든 인스턴스가 가지는 메서드 이므로 메모리 낭비가 됨function Circle(radius) { this.radius = radius; this.getArea = function () { return Math.PI * this.radius ** 2; }}// 프로토타입을 이용한 getArea 중복 제거// 모든 인스턴스는 getArea 메서드를 공유함function Circle..

  • format_list_bulleted FE/Javascript
  • · 2025. 7. 29.
  • textsms
[React 까보기] 5. setState (feat. dispatchAction)

[React 까보기] 5. setState (feat. dispatchAction)

useState를 호출한다는 것은 mountState 함수를 호출하는 것과 같다는 것을 이전 포스팅에서 알아보았다.따라서 우리가 잘 알고있는 setState를 통해 상태를 업데이트 하는 과정은 dispatch 함수를 분석한다면 알 수 있을 것 이다.위에서 말한 dispatch 함수에는 dispatchAction.bind() 함수의 값이 할당 되어 있으므로 dispatchAction을 분석해보겠다.1️⃣ dispatchAction 함수 function dispatchAction( fiber: Fiber, queue: UpdateQueue, action: A,) { // 3. update 소비중 다시 update 발생 // renderWithHooks 내부에서 1씩 증가시켰던 numberOfRere..

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

티스토리툴바