일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- HOC
- Wecode
- storybook
- ES6
- MySQL
- TypeScript
- 쉬운설명
- nodejs
- 자바스크립트
- jsx
- App.vue
- mapGetters
- CSS
- State
- scss
- Vue.js
- JavaScript
- react
- input
- Vue
- webpack
- 댓글달기
- event
- 리액트
- Vue transition
- v-html
- 자료구조
- sass
- vuex
- express
- Today
- Total
목록분류 전체보기 (238)
익명의 개발노트
Binary -heap 구조는 트리구조에서 최대값과 최소값을 빠르게 찾기 위한 완전 이진트리(complete binary tree) 기본으로 한 자료구조임. 1. 종류 1) Min Heap : Root Node에 가장 작은 값이 오도록 하는 것. 부모노드는 자식노드보다 작은 값을 가지는 트리구조. 2) Max Heap : Root Node에 가장 큰 값이 오도록 하는 것. 모든 부모노드는 자기 자식노드보다 큰 값을 가지는 트리구조. ※ 근본적으로 두개는 갖고 숫자만 반대로 하면 된다. 아래 설명은 최소힙만 보도록 하겠다. 2. 특징 1) 삽입(insert) (1) 완전 이진트리의 구성을 잃지 않도록 마지막 Child Node의 왼쪽부터 채워나감. ※ 왼쪽 채워져있으면 오른쪽에 채우면 됨 (2) 삽입된 원..
트리구조로 데이터에 접근하는 방법(Tree traversals)으로 3가지 방법이 있다. 1. In-order traversal 2. Pre-order traversal 3. Post-order traversal 1. In-order traversal 1) Root Node를 시작으로 왼쪽노드, 호출한 노드, 오른쪽 노드순서로 탐색을 한다. 2) Left Node →Root Node →Right Node 순으로 출력한다. 3) 위그림으로 출력해보면 출력순서는 : 4 → 2 → 5 → 1 → 3 2. Pre-order traversal 1) Root Node를 pre(=before) 에 출력, 자기 자신이 먼저 출력한다. 2) Root Node → Left Node → Right Node 순으로 출력한다...
트리구조는 위 그림과 같은 형태의 데이터 구조를 말한다. 1. 특징 1) 1개의 Root Node갖는다. 2) Root Node는 0개 이상의 Child Node를 갖는다. 3) Child Node 또한 0개 이상의 Child Node를 갖고 있고, 이는 반복적으로 정의된다. 4) 트리에는 Cycle이 존재할 수 없다. 5) 각 Node는 어떤 자료형으로도 표현 가능하며, 부모 Node로의 연결이 있을 수도 없을 수도 있다. 2. 종류 1) 이진트리(Binary tree), 이진검색트리(Binary search tree), 완전이진트리(Complete binary tree), 전 이진트리(Full binary tree), 포화이진트리(perfect binary tree) 로 구분된다. 2) 트리는 균형(..
포스기 간단하게 만들어보기. 구현해야할 기능 1. 버튼 누르면 주문목록에 리스트 뜨기. 2. 주문목록에 뜬 리스트 +나 - 버튼 누르면 수량 증가 및 감소하기. 3. 삭제버튼 누르면 리스트 삭제하기. 4. 2,3번에 맞춰서 총 합계 가격 나타내기. 5. 결제버튼 누르면 주문목록 초기화 하기 6. 결제취소 버튼 누르면 결제전 화면으로 돌아가기. 7. 같은 버튼 누르면 두개 이상안들어가게 하기. => 아직 미구현. 느낀점 1. 간단한 페이지는 제이쿼리로 하는 것이 효과적이지만, 요즘 추세가 제이쿼리를 안쓰는추세라 바닐라 자바스크립트로 코딩해서 그런지 줄이 길어지는 단점이 있음. 2. 시행착오 1) 가격합계를 구할 때, 어떻게 할까 고민하다가, 배열을 하나 만들어서 넣었음. 그리고 넣은 값을 reduce로 합..
자바스크립트 프로토타입. 다른 블로그나 MDN을 봐도 무슨말인지 이해하기 힘들 것이다. 한마디로 정의하면, 인스턴스가 생성(instantiation)될 때 원형(original form), 즉 프로토타입(prototype)의 모양대로 인스턴스가 생성 인스턴스의 메소드는 Object.prototype.something으로 표현, prototype === 원형 프로토타입과 인스턴스의 관계는 붕어빵틀과 붕어빵의 관계라고 보면 된다. 프로토타입이 있어야 인스턴스를 만들 수가 있다는 말이다. 그럼 프로토타입은 무엇이냐?? 사전적의미는 원형이다. 자바스크립트는 함수형 언어이다. 우리가 쓰는 Array나 Object, 그안에 딸린 메서드 들도 전부 function Array(){}, function Object(){..
자바스크립트를 공부하면서 for문 안에 onclick 같은 이벤트 핸들러를 넣으면 그 수에 맞게 작동을 할 것같다. 하지만, 스코프 문제 때문에 그렇치 않음을 알 수있다. 흔히 볼 수 있는 예제를 보자. 출처 : https://stackoverflow.com/questions/6487366/how-to-generate-event-handlers-with-loop-in-javascript b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 for(i=1; i
두 수의 최대 공약수 구하기 리컬시브한 방법으로 구현하기. function uclide(m, n){ if(n === 0 ){ return m; } if(m % n === 0){ return n; }else if(m % n != 0){ return uclide(n, m % n); } } uclide(192,72);
function repeatString(string, n) { var newString = ''; var i=0; while(i < n){ newString = newString + string; i++; } return newString; } function repeatString(string, n){ if(n === 0){ return ''; } if(n ===1){ return string; } return string + repeatString(string, n-1); } repeatString('dog',5);
데이터를 해시함수를 거쳐 테이블에 정렬하는 방식. 해시함수는 +,-,*,/,% 등등 사용됨. 해시함수로 인덱스를 구분함. 이런 일련의 과정을 Hasing이라고 지칭한다. 이런식으로 하다보면 발생하는 문제가 생기는데, 대부분의 문제가 해시충돌 현상이 발생한다.(인덱스가 겹치는 현상) 해시충돌값을 해결하기 위한 방법으로는 Chaining, Linear Probing, Resizing 방법이 있다. 1. Chaining 방법은 분리연결법? 해석은 참 거지 같다. 눈에 들어오지도 않는 어려운 용어... 값부분에 Linked List로 구현하는 방식이다. 이런식으로 저장을 해서 충돌을 피하는 방식이다. 값찾으려면 인덱스 값 타고 들어가서 Linked List의 값을 찾는 방법을 써야한다. 2번째는 Linear P..
큐는 흔히들 이야기하는 선착순, 카페 줄서기, 은행줄서기를 생각하면 이해하기 쉽다. 먼저 들어온 값이 먼저 나가는 것으로 , FIFO(First in First Out)으로 볼 수 있다. 큐는 프로세스 스케줄링, 네트워크 패킷처리, 프린트 대기열, 대부분의 입출력 등에서 사용된다. 큐에서 흔히 사용되는 ADT(Abstract Data Type)는 Enqueue(삽입), Dequeue(값 빼기), Size(크기확인), Empty(비었는지 확인), peek (맨 앞값 확인) 가 있다. Psuedo 코드 QueueArr[10] 생성 tail =0 생성(꼬리) head =0(맨앞) 생성 Enqueue(data) 함수 생성 tail이 큐배열의 길이보다 크면 "큐 오버플로우" 메시지 출력 그 반대면 배열에 data..