목록javascript (48)
seunghyun Note

깊이 우선 (DFS) preorder, inorder, postorder 재귀함수 사용해서 문제 해결하기 //Node를 생성한다. class Node { constructor(value) { this.value = value; this.left = null; this.right = null; } } //BST class BinarySearchTree { constructor() { this.root = null; } insert(value) { var newNode = new Node(value); if (this.root === null) { this.root = newNode; return this; } var current = this.root; while (true) { if (value === ..

단일 연결 리스트 이중 연결 리스트 스택 & 큐 (배열로 하는 방법은 숙지했음! linked list로 구현해 보기) 이진 검색 트리 트리 순회 (bfs,dfs) 이진 힙 해시 테이블 (사용해 봤지만 복습) 그래프, 그래프 순회 다익스트라 알고리즘 동적 프로그래밍 트리 순회 소개 트리를 순회하는데는 두 가지 방식이 있다. 너비 우선 (BFS) 깊이 우선 (DFS) preorder, inorder, postorder BFS 너비우선탐색 - use Queue(Array & list) : FIFO(first in first out) 아래코드를 보면 1~7번까지 순서로 이동한다. class Node { constructor(value) { this.value = value; this.left = null; th..

링크 : https://www.acmicpc.net/problem/1991 1991번: 트리 순회 첫째 줄에는 이진 트리의 노드의 개수 N(1 ≤ N ≤ 26)이 주어진다. 둘째 줄부터 N개의 줄에 걸쳐 각 노드와 그의 왼쪽 자식 노드, 오른쪽 자식 노드가 주어진다. 노드의 이름은 A부터 차례대로 알파 www.acmicpc.net 문제 풀이 이진 트리를 입력받아 전위 순회(preorder traversal), 중위 순회(inorder traversal), 후위 순회(postorder traversal)한 결과를 출력하는 프로그램을 작성하시오. 아직 트리에 대한 이해도가 많이 부족한 거 같다. 굳이 class를 만들어서 풀 필요가 없었다. 또한 순회에 대한 재귀가 아직 이해가 되지 않아 아래의 링크를 참고..

링크 : https://school.programmers.co.kr/learn/courses/30/lessons/136798 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 deep dive 풀이 로직을 완벽히 이해하고 풀었다. - 약수를 통한 간단한 알고리즘이였고 시간복잡도를 최대한 고려해보려고 하다가 O(N^2)으로 구성해봤다. - js문법인 map과 forEach 를 통해 순회를 시키고 function을 만들어 캡슐화를 시켰다. - 따로 예외케이스는 없었다. 예외처리 : x 특이점 : 약수를 구할 때 자기 자신을 제외하고 number/2로 ..

단일 연결 리스트 이중 연결 리스트 스택 & 큐 (배열로 하는 방법은 숙지했음! linked list로 구현해 보기) 이진 검색 트리 트리 순회 이진 힙 해시 테이블 (사용해 봤지만 복습) 그래프, 그래프 순회 다익스트라 알고리즘 동적 프로그래밍 기본적인 연결리스트의 개념이 필요하다. 2024.01.23 - [코딩테스트/코테를 위한 알고리즘 & 자료구조 정리] - Singly Linked Lists with JS Singly Linked Lists with JS 코딩테스트를 공부하면서 프로그래머스 lv0~lv1 쉬운 버전들, 백준 실버 5 까지는 풀어도 linked list, stack & queue, tree 등 다양한 자료구조와 알고리즘 문제들이 나오면 과거에 배웠던 것을 망각하고 cojjangsh...

js를 공부하는데 res가 이해가 안될 때가 너무 많았다.. (간단하게 정리) res는 Express.js(웹 애플리케이션 프레임워크)에서 사용되는 객체로, 클라이언트에게 서버로부터 응답을 보내는 데 사용됩니다. res.render()는 Express.js에서 뷰 템플릿을 렌더링하여 클라이언트에게 HTML을 보내는 메서드입니다. 이를 사용하여 템플릿 엔진을 통해 동적으로 생성된 데이터를 HTML로 렌더링할 수 있습니다. res.render() 메서드는 렌더링할 뷰 템플릿 파일의 이름과 렌더링할 데이터를 인자로 받습니다. 코드를 만들어서 이해해보자! res.render() const express = require('express'); const app = express(); // GET 요청에 대한 처리..