| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- Brute Force
- Trie
- Hash
- Stored Procedure
- two pointer
- Dijkstra
- union find
- MYSQL
- SQL
- 그래프
- 이진탐색
- String
- binary search
- Two Points
- 다익스트라
- 스토어드 프로시저
- DP
- Today
- Total
목록2026/01/04 (3)
codingfarm
1.소개JavaScript는 Iterator를 반환하는 아래와 같은 메서드를 가지고 있을 경우 Iterable로 규정한다.이를 iteration protocol라 칭한다.[Symbol.iterator]() { return {next() {...}}; }대표적인 Iterable은 Array, Map, Set 등이 있으며,Iterator를 통해 for...of 문, 전개연산자, 구조 분해 등 다양한 기능들을 제공한다.2. Iterator특정 크기의 자연수 지연 생성하는 Iterator를 반환하는 일반함수를 구현해보겠다.function naturals(end: number = Infinity): Iterator { let n = 1; return { next(): IteratorResult { ..
1. 소개제너레이터(Generator) 는 함수의 실행을 중간에 멈췄다가 다시 이어서 실행할 수 있게 해주는 설계 방식(구조) 를 지칭하며,자바스크립트의 제너레이터 함수는 iterator를 사용함으로써 함수 내부 코드의 호출타이밍을 사용자가 제어할 수 있게 해준다.2. 문법2-1. function*자바스크립트에서 제너레이터 함수는 function* 키워드로 정의되며, 일반함수와 달리 한번에 끝까지 실행되지 않는다.함수호출시 iterator를 반환하며, next() 함수를 호출할때마다, yield return 지점까지 실행을 재개한다.(유니티 엔진의 코루틴처럼)function* generatorFunc() { yield 1; yield 2; yield 3;}const iterator = generat..
0. 소개반복자 패턴의 구현을 통해 객체지향언어가 함수형 패러다임을 구용하는 방식에 대해 알아보겠다.1. 반복자 (Iterator)반복자는 다수의 데이터를 순차적으로 꺼내어 처리할 수 있게 해주는 객체를 나타낸다.이를통해 사용자는, 특정 자료(트리, 집합, 맵 등)의 내부구조를 몰라도 데이터를 순회할 수 있다.1.1 반복자의 개념반복자는 필수적으로 다음 2가지 개념을 가진다.다음요소 가져오기 (next)남은 요소가 더 있는지 확인하기 (done)1.2 반복자의 특징메모리 효율적모든 데이터를 한번에 메모리에 올리지 않고 순회 가능자료구조와 순회방식 분리어떠한 자료구조에 대해서도 같은 순회 방법을 제공일관된 문법for, foreach 같은 반복문 사용이 가능해짐지연순회 제공순회방식을 객체로 캡슐화Iterat..
