일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 웹팩 기본개념
- 항해99
- 코어자바스크립트
- 항해99 미니프로젝트
- this
- 항해99 사전스터디
- js배열 알고리즘
- JS module system
- 실행컨텍스트
- 자바스크립트 엔진 v8
- 타입스크립트
- 리액트 메모이제이션
- 항해99 부트캠프
- gql restapi 차이
- 리액트 렌더링 최적화
- next js
- v8 원리
- 리액트 메모
- 렌더링 최적화
- chromatic error
- 함수형 프로그래밍 특징
- 테스트 코드 툴 비교
- 리덕스
- FP 특징
- jwt
- 알고리즘
- 웹 크롤링
- Js module
- toggle-btn
- 리액트
- Today
- Total
목록js배열 알고리즘 (2)
Jaeilit
투포인트란 배열에서 포인트를 2개를 가지고 배열을 탐색하는 방법이다. 예제) [1, 2, 2, 5, 7, 7, 99 ] 배열에서 중복이 아닌 숫자의 갯수를 얻어내려면?? 이중 for문으로 i 와 j 를 두고 모두 탐색하면 방법도 있겠지만 그건 for 문이 2번이니 On^2 를 가지게 된다. i와 j를 가진다는 점에서는 비슷하지만 투포인트 기법으로 하게되면 O(n) 의 결과를 얻게 된다. 예제) [-4, -3, -2, -1, 0, 1, 2, 5] 이 배열에서 서로 더 한 값이 0이 되는 수를 찾아서 반환한다. 코드를 살펴보자, function sumZero(arr) { for (let i = 0; i < arr.length; i++) { for (let j = i + 1; j < arr.length; j+..
배열 2개를 비교해서 중복을 검사하는 알고리즘 1. 함수로 배열 2개를 받아서 두번째 배열이 첫번째 배열의 제곱이 되는 수로 이루어져있는지 체크하는 알고리즘 [1, 2, 3, 2], [9, 1, 4, 4] function same(arr1, arr2) { if (arr1.length !== arr2.length) { return false; } for (let i = 0; i < arr1.length; i++) { let correctIndex = arr2.indexOf(arr1[i] ** 2); console.log(correctIndex); if (correctIndex === -1) { return false; } console.log(arr2); arr2.splice(correctIndex, 1)..