본문 바로가기

자료 구조 <Data Structure>/JavaScript19

Prototype 을 요약해보기. "프로토 타입의 의미는 객체가 생성될때마다 해당 객체의 메소드를 만들어 메모리에 할당을 해야 하는데 그렇게 하지않고 생성자의 프로토타입에 정의함으로서 다른 모든 객체들이 참조하여 사용할 수 있도록 하여 메모리를 효율적으로 사용할 수 있도록 하는 장점과 메소드의 재정의가 필요한 객체들은 상황에 맞게 자신만 사용가능한 메소드를 재정의 할수 있어 유지보수에도 많은 도움이 됩니다." 어떤 의미로서는 'global' 스러운 느낌도 있다. 다만 이 표현은 주의하고, prototype 으로 저렇게 광역으로 사용도 가능하다는 정도로 알아두는게 좋을 듯 합니다. 2021. 9. 8.
연결 리스트와 이진 트리 연결 리스트와 이진 트리: 연결 리스트는 추상적 개념. 탐색/정렬 이 위주라면 배열 형식. 추가/삭제 이 위주라면 연결 리스트. 배열 형식은 규모가 커지면 속도면에서 불리한 편. 규모가 작으면 합당한 개념. 연결 리스트는 규모가 커지면서 수정 및 추가 삭제가 있을 수록, 합당한 개념. 이진 트리는 일종의 약속 개념. 노드는 데이터 지점(data point)을 의미한다. 이진 트리가 가장 노골적으로 적용 된 곳이 prototype 개념으로 보입니다. 2021. 9. 7.
다시봐도 헷깔리는 While 문 물론 지금을 기준으로입니다. 다만 현 시점에서는 이해하기가 다소 한계가 느껴지네요. https://www.acmicpc.net/problem/10951 10951번: A+B - 4 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net let input = require('fs').readFileSync('/dev/stdin').toString().split('\n'); for (let i = 0; i < input.length - 1; i++) { let numbers = input[i].split(' '); console.log(Number(numbers[0]) + Number(numbers[1])); } 해석. 이대로라면, 반복문이 시작되는 지점인 .. 2021. 8. 25.
백준 1065 한수 - JS 한수 문제. 입력: 첫째 줄에 1,000보다 작거나 같은 자연수 N이 주어진다. 출력: 첫째 줄에 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력한다. 이 문제를 풀려면 등차수열에 대한 이해가 필요합니다. "수학에서, 등차수열(等差數列, 문화어: 같은차수렬, 영어: arithmetic progression, AP 또는 arithmetic sequence)은 연속하는 두 항의 차이가 모두 일정한 수열을 뜻한다. ... 예를 들어, 앞의 수열의 공차는 2이다." - wikipedia 우선 fs module. 그런데 이렇게 하면 VSCode 상으로는 되지만, 백준에서는 틀렸다고 합니다. // Initializing function hanSoo(N) { const numArr = []; let ha.. 2021. 8. 8.