이번 글에서는 알고리즘 스터디 1주차에 진행한 내용을 정리해보겠습니다. 1주차에는 다양한 연산자, 내장 함수 및 객체, 배열과 문자열 처리에 대해 다뤘습니다.
기본
1. 문자열 여러 번 뒤집기
2. 배열 만들기 6
3. 옹알이 (1)
심화
1. 주사위 게임 3
/, *, +, -, %, **5 + 3, 10 - 2, 4 * 2, 9 / 3, 10 % 3, 2 ** 3&&, ||, ??true && false, true || false, null ?? 'default'조건 ? 값1 : 값2const result = (a > b) ? 'a is greater' : 'b is greater';?.const value = obj?.property?.subProperty;&, |, ^, ~, <<, >>, >>>5 & 1, 5 | 1, 5 ^ 1, ~5, 5 << 1, 5 >> 1, 5 >>> 1Number('123')String(123)parseInt('123')parseFloat('123.45')Array.from('123'), Array.of(1, 2, 3)new Set([1, 2, 3])Math.random(), Math.floor(1.5)new Map([['key1', 'value1'], ['key2', 'value2']])Array.from('123') // ['1', '2', '3']Array.of(1, 2, 3) // [1, 2, 3]['a', 'b', 'c'].join('-') // 'a-b-c'[1, 2, 3].map(x => x * 2) // [2, 4, 6]array.slice(1, 3) // 부분 배열 반환array.splice(1, 2, 'a', 'b') // 배열 요소 제거 및 추가array.find(x => x > 10) // 조건에 맞는 첫 요소 반환push와 pop 사용push와 shift 사용array.sort((a, b) => a - b) // 오름차순 정렬'a,b,c'.split(',') // ['a', 'b', 'c']'hello world'.replace('world', 'javascript') // 'hello javascript''hello world'.replaceAll('l', 'L') // 'heLLo worLd'' hello '.trim() // 'hello''hello'.includes('ell') // true'hello'.indexOf('o') // 4'hello'.toUpperCase() // 'HELLO''HELLO'.toLowerCase() // 'hello'멱등성은 특정 연산을 여러 번 적용하더라도 결과가 달라지지 않는 성질을 말합니다. 이는 함수나 연산이 한 번 수행된 이후에 동일한 입력으로 다시 수행되어도 결과가 동일함을 보장합니다. HTTP 메소드 중 일부는 멱등성을 가지며, 이는 웹 애플리케이션의 안정성과 예측 가능성을 높이는 데 중요한 역할을 합니다.
1주차 스터디에서는 다양한 연산자와 내장 함수, 배열과 문자열의 처리 방법을 학습했습니다. 이는 코딩 테스트에서 자주 사용하는 기초 개념들로, 각 연산자와 메소드의 활용 방법을 이해하고 익히는 것이 중요합니다. 학습한 내용을 바탕으로 다양한 문제를 풀어볼 계획입니다.