Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 자바스크립트 문제
- 자바스크립트 문제풀이
- til
- 리액트쿼리
- 자바스크립트 알고리즘 문제
- Baekjoon
- lodash
- 자바스크립트 연결리스트
- 알고리즘문제풀이
- CSS
- stack문제
- Next.js13
- 자바스크립트 문제 풀이
- leetcode
- 제로베이스
- leetcode문제풀이
- 리액트
- 자바스크립트코딩테스트
- react
- 자바스크립트 알고리즘
- next13
- 타입스크립트
- Next
- 자바스크립트
- JS
- NPM
- JavaScript
- 프로그래머스
- 프론트엔드
- HTML
Archives
- Today
- Total
코드노트
LeetCode 8. String to Integer (atoi) 자바스크립트 문제 풀이 본문
Code note/자바스크립트 알고리즘 문제풀이
LeetCode 8. String to Integer (atoi) 자바스크립트 문제 풀이
코드노트 2022. 9. 27. 14:43문제 설명
8. String to Integer (atoi) / 문자열을 정수로(atoi)
- 선행 공백을 읽고 무시하십시오.
- 다음 문자(문자열 끝에 아직 없는 경우)가 '-'또는 '+'. 이 문자를 읽으십시오. 이것은 최종 결과가 각각 음수인지 양수인지를 결정합니다. 둘 다 없으면 결과가 양수라고 가정합니다.
- 다음 숫자가 아닌 문자 또는 입력 끝에 도달할 때까지 다음 문자를 읽습니다. 나머지 문자열은 무시됩니다.
- 이 숫자를 정수로 변환합니다(즉 "123" -> 123, , "0032" -> 32). 읽은 숫자가 없으면 정수는 0입니다. 필요에 따라 기호를 변경합니다(2단계부터).
- 정수가 32비트 부호 있는 정수 범위를 벗어나면 해당 범위에 남아 있도록 정수를 클램프합니다. 특히, 보다 작은 정수 는 로 고정되어야 하고 , 보다 큰 정수 는 로 고정되어야 합니다 .[-231, 231 - 1]-231-231231 - 1231 - 1
- 정수를 최종 결과로 반환합니다.
간단하게 정리하면 문자열이 들어오면
1. 공백은 무시한다.
2. 만약 - + 기호가 있으면 최종 결과에 음수, 양수 반영 / 둘다 없으면 양수
3. 정수 범위는 32비트
문제설명에서 헷갈리는게 있었지만 이번 문제도 간단했다. parseInt로 변환 후 조건들을 넣어서 범위를 체크하고 반환하면 되는 문제였다.
var myAtoi = function (s) {
let result = parseInt(s, 10);
let max = 2147483647;
let min = -2147483648;
if (isNaN(result)) return 0;
if (result > max) return max;
if (result < min) return min;
return result;
};
나는 if를 3개 써서 했지만 switch를 사용해서 푸는 방법도 괜찮은거 같다.
이런 문제들만 있으면 그래도 풀수있는 자신감은 생길텐데 가면 갈수록 너무 어려워진다..으아
'Code note > 자바스크립트 알고리즘 문제풀이' 카테고리의 다른 글
알고리즘 문제 오답풀이_1 (1) | 2022.09.29 |
---|---|
프로그래머스 최솟값 만들기 자바스크립트 풀이 (0) | 2022.09.29 |
Leetcode 7. Reverse Integer 자바스크립트 문제 풀이 (0) | 2022.09.27 |
LeetCode 6. Zigzag Conversion 자바스크립트 문제 풀이 (0) | 2022.09.24 |
자바스크립트 스택 알고리즘 문제 풀이, 괄호 계산 (0) | 2022.09.24 |