"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 인터뷰 전문가는 간단한 파일 분류 기술을 가르칩니다

인터뷰 전문가는 간단한 파일 분류 기술을 가르칩니다

2025-04-21에 게시되었습니다
검색:790

A Lesson in Simplicity: Sorting Files Like a Pro in an Interview

전체 스택 개발자 역할에 대한 기술 인터뷰에서 친숙하면서도 예기치 않게 도전적인 상황에서 나 자신을 발견했습니다. 면접관이 처음에는 단순 해 보이는 작업을 제시 할 때까지 모든 것이 순조롭게 진행되었습니다.

“이 파일 이름이 파일 탐색기에 표시되는 방식으로 오름차순으로 정렬 할 수 있습니까?” 그들은 물었다.

나는“케이크 조각”이라고 생각했다. 정렬은 기본적인 작업으로 문제를 예상하지 못했습니다. 그러나 코드를 작성하기 시작하자마자 나는 걸렸다. 파일 이름은 모든 곳에 있었지만 일부는 단순했지만 다른 일부는 숫자, 문자 및 두 가지 조합을 포함했습니다.

와 같은 기본 문자열 정렬 방법을 사용해 보았습니다. Array.sort ();

그러나 이것은 이상한 결과를 가져 왔습니다. 숫자는 사전으로 분류되었습니다 (“10”은“1”으로 시작하기 때문에“10”이“2”보다 먼저옵니다), 혼합 영숫자 문자열은 올바른 순서가 아니 었습니다. 그것은 엉망이었고 파일 탐색기에서 볼 수있는 자연 순서와 비슷하지 않았습니다.

나는 시계가 똑딱 거리고 압력이 쌓이는 것을 느낄 수있었습니다. 나는 숫자를 올바르게 처리하기 위해 다양한 사용자 정의 비교 함수를 통해 작업하려고했지만 아무것도 클릭하는 것 같지 않았습니다.

그럼, 나는 얼마 전에 읽은 간단한 속임수를 기억했다 : localecompare.

LocalEcompare를 사용하면 인간이 사물을 분류하는 방식을 모방하는 방식으로 현을 비교할 수 있습니다. 숫자 옵션과 함께 사용하면 숫자를 텍스트로 비교하지 않고 실제 숫자로 처리합니다. 내가 사용한 코드는 다음과 같습니다.

array.sort ((a, b) => a.localecompare (b, undefined, {numeric : true, sensitivity : 'base'});

이 단일 코드 라인은 파일 탐색기와 같은 파일 이름을 정렬했습니다. 숫자는 자연스럽게 주문되었으며 문자/번호 조합은 매끄럽게 처리되었습니다.

코드를 실행하자마자 올바른 순서가 화면에 나타나는 것을 보았습니다. 파일 이름은 파일 탐색기와 마찬가지로 오름차순 순서로 완벽하게 정렬되었습니다. 나는 문제를 해결 한 방법에 만족하는 것처럼 보이는 면접관에게 해결책을 설명하면서 미소를 지었다.

처음에 복잡한 문제처럼 느껴지는 것은 단순하고 우아한 솔루션으로 해결되었습니다. 때로는 가장 효과적인 도구가 가장 단순하다는 것을 상기시켜 주었고, 그 작은 트릭을 아는 것은 모든 차이를 만들 수 있습니다.

A Lesson in Simplicity: Sorting Files Like a Pro in an Interview

릴리스 선언문 이 기사는 https://dev.to/janvinsha/a-lesson-in-simplicity-sorting-files-like-pro-in-interview-1nlo ?1에서 재현됩니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3