기술 블로그

코테 정리 본문

알고리즘

코테 정리

jaegwan 2024. 10. 22. 14:04
반응형

JavaScript에서 문자열 비교와 숫자 정렬 문제 해결

JavaScript에서 숫자를 이어 붙여 가장 큰 수를 만들 때 주의해야 할 점과 효과적인 방법을 소개합니다.

1. 숫자로 변환 시 정밀도 손실

숫자가 매우 크면 Number 타입으로 처리할 때 정밀도가 손실될 수 있습니다. 따라서 큰 숫자를 직접 숫자로 변환해 비교하면 잘못된 결과가 나옵니다.

Number("11111112111111121"); // 11111112111111120 (정밀도 손실)

2. localeCompare()로 문자열 비교

두 숫자를 문자열로 결합한 후 localeCompare()로 비교해 사전식으로 정렬할 수 있습니다. 이 방식은 정확한 비교를 제공합니다.

("34" + "9").localeCompare("9" + "34"); // 1, "349"가 "934"보다 작음

이 방법을 통해 숫자 배열을 정렬해 가장 큰 숫자를 만들 수 있습니다.

반응형

'알고리즘' 카테고리의 다른 글

js heapq  (0) 2023.11.14
[JS] 알고리즘을 위한 js - 2 문자열과 순회문  (0) 2023.11.13
[JS] 알고리즘을 위한 js - 1 배열  (0) 2023.11.13
[프로그래머스] 조이스틱  (0) 2023.11.01
프로그래머스 체육복  (0) 2023.10.26
Comments