본문으로 건너뛰기
CalcMax

오름차순 정렬 계산기

계산 결과

-10, -3, 0, 4, 7, 12.5

정렬(오름차순)

최솟값
-10
최댓값
12.5

여러 수를 작은 것부터 나란히 세우는 일은, 수직선 위에 놓았을 때 왼쪽에서 오른쪽으로 읽는 순서를 만드는 것입니다. 7, -3, 12.5, 0, -10, 4라는 목록은 -10, -3, 0, 4, 7, 12.5가 되고, 그 선의 양 끝이 가장 작은 값과 가장 큰 값입니다. 이 페이지는 붙여 넣은 목록을 최대 이백 개까지 그렇게 정렬하고, 정렬된 목록과 함께 최솟값과 최댓값을 알려 줍니다. 숫자 정렬은 작은 일이지만 조심할 값어치가 있습니다. 뻔해 보이는 방법이 두 군데에서 틀리기 때문입니다. 첫째는 수를 수로 견주어야 한다는 것입니다. 문자로 견주면 안 됩니다. 같은 값들을 문자열로 정렬하면 -10, -3, 0, 12.5, 4, 7이 됩니다. 12.5를 4 앞에 놓는데, 문자 1이 문자 4보다 앞서고 비교가 소수점 뒤의 숫자까지 가지 않기 때문입니다. 한 자리 양수 목록에서는 이 오류가 아예 나타나지 않고, 바로 그래서 위험합니다. 여러 자리 값이나 음수가 우연히 들어 있지 않은 시험은 전부 통과하고, 그런 값이 들어 있는 목록에서 처음 드러납니다. 둘째는 음수인데, 같은 함정이 거울처럼 뒤집혀 있습니다. 문자열로는 -10이 -2보다 앞에 오는데 이는 맞아 보이고, -2가 -10보다 앞에 오는데 이는 틀립니다. 올바른 순서는 -20, -10, -3이며, 선에서 더 왼쪽이라는 것이 더 작다는 뜻이고 자릿수가 많다는 뜻이 아닙니다. 놓치기 쉬운 두 가지가 더 있습니다. 이 페이지는 중복을 남깁니다. 5, 5, 3은 3, 5, 5로 나옵니다. 되풀이를 지우는 것은 다른 연산이고, 여기서 그렇게 하면 답에 여러분이 준 수가 더 이상 정확히 들어 있지 않게 됩니다. 그리고 각 값을 정규화된 표기로 인쇄합니다. 12.50은 12.5가 되고 +7은 7이 됩니다. 끝의 0이나 앞의 더하기 부호는 값의 일부가 아니기 때문입니다. 일부러 그렇게 적었다면 출력은 그것을 보존하지 않습니다. 작은 수부터 세우는 일은 수 목록에 바라는 대부분의 일에서 첫 단계입니다. 중앙값은 정렬된 목록의 가운데이고, 범위는 그 양 끝이며, 사분위수는 정해진 위치에서 읽어 냅니다.

공식

7; -3; 12.5; 0; -10; 4 ⇒ -10, -3, 0, 4, 7, 12.5; 최솟값 = -10, 최댓값 = 12.5

n
목록에 있는 수의 개수이며 1에서 200 사이입니다. 하나도 허용되고 수 하나짜리 목록이 되는데, 이는 퇴화한 경우가 아니라 진짜로 맞는 답입니다. 수 하나는 이미 오름차순이고, 그 집합의 최솟값이자 최댓값입니다
a ≤ b
정렬이 기대는 비교이고, 이 페이지의 정확함이 전부 여기에 있습니다. 수로 견주는 비교이므로 -10 ≤ -3과 9 ≤ 10이 둘 다 성립합니다. 문자로 정렬하면 자리를 왼쪽부터 하나씩 견주기 때문에, -10이 -3보다 앞에 오는 것도 우연히 맞고 10이 9보다 앞에 오는 것도 같은 우연으로 틀립니다
-10, -3, 0, 4, 7, 12.5
정렬된 출력이며 입력의 순열입니다. 여섯 개가 들어가서 같은 여섯 개가 나옵니다. 결과가 의심스러울 때 확인할 것이 바로 이것입니다. 개수가 같아야 하고, 넣은 값이 넣은 횟수만큼 나와야 합니다. 이 페이지는 수를 더하거나 지우거나 합치지 않습니다
최솟값 = -10
정렬된 목록의 첫 항목이며, 따로 훑어서 찾은 것이 아니라 거기서 읽은 것입니다. 수직선에서는 가장 왼쪽 점입니다. 입력에서 가장 작아 보이는 항목과는 다릅니다. -10은 -3보다 짧아 보이지만 더 작은 수입니다
최댓값 = 12.5
정렬된 목록의 마지막 항목이며, 역시 찾은 것이 아니라 읽은 것입니다. 이것과 최솟값 사이의 간격이 곧 범위이고, 이 두 출력만 있으면 되는 유일한 통계량입니다. 이 페이지에서 범위를 구하는 것도 같은 두 값에서 나옵니다
3, 5, 5
중복이 하는 일입니다. 입력 5, 5, 3은 3, 5, 5로 정렬되며 되풀이가 살아남습니다. 지우면 보기에는 깔끔하겠지만 위의 불변식을 깨고, 값이 몇 개인가에 관한 모든 질문의 답을 조용히 바꿉니다. 중앙값이 그중 하나입니다

중앙값을 읽는 것이 정렬하는 가장 흔한 이유입니다. 중앙값은 정렬된 목록의 가운데 값이고, 개수가 짝수일 때는 가운데 둘의 평균인데, 정렬되지 않은 목록에서는 둘 다 읽어 낼 수 없습니다. 사분위수와 백분위수도 마찬가지이며, 정렬된 순서에서의 위치로 정의됩니다. 둘째 쓰임은 범위입니다. 가장 큰 값에서 가장 작은 값을 뺀 것일 뿐이고, 이 페이지가 그 두 수를 그대로 인쇄하므로 오름차순 정렬 계산기를 열어 뺄셈까지 시킬 필요는 없습니다. 셋째는 지극히 사람다운 쓰임입니다. 표에서 붙여 넣은 측정값, 가격, 나이, 점수의 열은 순서가 잡히면 훨씬 읽기 쉬워집니다. 양 끝이 튀어나오고 무리들이 눈에 들어오기 때문입니다. 도수나 히스토그램이 모두 여기서 시작하는 것도 같은 이유입니다. 넷째는 표 계산 프로그램의 정렬을 검산하는 일입니다. 열 서식이 어긋나 있으면 문자로 정렬하는 실수가 흔하고, 그 증상이 위에서 말한 바로 그 오류입니다. 10이 9보다 앞에 오거나 12.5가 4보다 앞에 오는 것입니다. 정렬된 열이 이상해 보인다면 같은 값을 이 페이지에 넣어 어느 쪽이 입력을 잘못 읽고 있는지 가릴 수 있습니다. 목록이 순서를 잡고 나면 이웃한 서술 통계량이 이어받습니다. 중앙값은 가운데를, 범위는 양 끝을, 사분위수는 사분의 위치를, 평균은 순서와 무관한 나머지 하나를 맡습니다

계산 예시

  1. 부호가 섞이고 소수도 있는 목록: 7; -3; 12.5; 0; -10; 4

    1. 가장 작은 값을 먼저 찾습니다. -10이 목록의 어느 것보다 왼쪽에 있습니다
    2. 그다음이 -3, 이어서 0, 4, 7입니다
    3. 12.5가 가장 크므로 맨 뒤로 갑니다
    4. 정렬된 목록은 -10, -3, 0, 4, 7, 12.5이고, 그 양 끝이 최솟값과 최댓값입니다

    기본 입력이고 일부러 까다롭게 고른 것입니다. 음수가 둘, 양의 소수가 하나, 0이 하나 들어 있어 두 함정을 한꺼번에 건드립니다. -3이 둘 중 더 길어 보이는 수인데도 -10이 먼저 온다는 점과, 12.5가 1로 시작하는데도 7 뒤에 온다는 점을 보십시오. 이 값들을 문자로 정렬하면 -10, -3, 0, 12.5, 4, 7이 됩니다. 음수 쪽은 우연히 맞아 보이고 소수는 엉뚱한 자리에 떨어집니다.

  2. 한 자리 수가 감춰 주는 함정: 9; 10; 100; 2

    1. 첫 자리가 아니라 값으로 견줍니다. 2가 9보다 작습니다
    2. 10은 9보다 크고 100보다 작습니다
    3. 순서는 2, 9, 10, 100입니다
    4. 가장 작은 값은 2이고 가장 큰 값은 100입니다

    짧은 양수 네 개로 이루어진, 문자 정렬을 잡아내는 목록입니다. 문자열로 견주면 10이 맨 앞, 2가 맨 뒤로 갑니다. 비교가 첫 문자에서 멈추기 때문입니다. 1이 2보다, 2가 9보다 앞섭니다. 올바른 순서는 값으로 견주어야 나오고, 뭔가 잘못되었다는 신호는 결과가 수직선처럼 보이지 않는다는 것입니다. 10이 2보다 앞에 앉는 숫자 배열은 존재하지 않습니다. 정렬 코드가 있다면 이 경우로 시험해 볼 만합니다. 한 자리 수만 있는 목록은 어느 쪽으로 해도 맞게 나오기 때문입니다.

  3. 음수를 반대 방향에서: -5; -20; -3

    1. 수직선에서 -20이 셋 중 가장 왼쪽에 있습니다
    2. -5는 그 오른쪽, -3은 셋 중 가장 오른쪽입니다
    3. 따라서 오름차순은 -20, -5, -3입니다
    4. 최솟값은 -20이며, 목록에서 가장 커 보이는 수입니다

    앞의 예제를 거울처럼 뒤집은 경우이고, 코드가 아니라 사람을 잡는 쪽입니다. -20은 자릿수가 가장 큰데도 셋 중 가장 작습니다. 선에서 더 왼쪽이 더 작기 때문입니다. 문자 정렬은 여기서 우연히 맞습니다. 문자열 -20이 -5보다 앞에 오기는 합니다. 그래서 음수는 문자 정렬이 맞는 것처럼 보이는 자리이고, 여러 자리 양수는 그것이 깨지는 자리입니다. 두 예제가 서로 반대 방향을 덮기 때문에 둘 다 필요합니다.

한계

목록은 1에서 200개의 수를 받고, 쉼표와 세미콜론, 공백으로 구분하며 셋을 한 목록에서 섞어 써도 됩니다. 이백은 이 페이지가 받아들이는 목록 길이의 한계이고 성능을 지키려는 장치가 아닙니다. 더 긴 목록이 느린 것이 아니라 거부되는데, 그만큼 긴 입력란은 더 이상 고칠 수 없고 답도 읽을 수 없게 되기 때문입니다. 수는 음수여도 되고 소수여도 되고 0이어도 되며, 중복은 지우지 않고 남깁니다. 천 단위 구분 기호는 알아듣지 못합니다. 쉼표 뒤에 공백이 오면 항목을 가르는 것이고, 두 숫자 사이에 공백 없이 앉은 쉼표는 소수점으로 읽힙니다. 1,5는 1.5 한 개입니다. 1,500 같은 천 단위 모양은 둘 중 어느 쪽도 아니어서 1500과 1.5를 구별할 수 없고, 짐작하는 대신 통째로 거부합니다. 큰 수를 묶어 놓은 표 열을 붙여 넣으면 조용히 잘못 읽는 것이 아니라 거절됩니다. 붙여 넣기 전에 구분 기호를 지우십시오. 지수 표기도 알아듣지 못하므로 1e5는 100000으로 읽히지 않고 거부됩니다. 출력은 적어 넣은 것을 그대로 베낀 것이 아니라 각 값의 정규화된 표기입니다. 12.50은 12.5로, +7은 7로, -0은 0으로 인쇄됩니다. 아주 큰 값은 10²¹ 이상에서 출력이 지수 표기로 바뀌는데, 이는 수를 문자로 바꾸는 과정이 스스로 표기를 바꾸는 지점입니다. 그것을 눌러 펴려면 두 번째 수 포매터를 써야 하고, 이 페이지에는 그것이 없습니다. 이 페이지에는 참고표가 없습니다. 표는 결과가 어느 구간에 드는지 보여 주는 물건이고, 정렬에는 구간이 없습니다. 오름차순만 제공합니다. 내림차순이 필요하면 출력을 오른쪽에서 왼쪽으로 읽으십시오.

자주 묻는 질문

음수와 소수가 함께 있는 목록은 어떻게 정렬하나요?
붙여 넣으면 페이지가 합니다. 구분자는 쉼표, 세미콜론, 공백을 쓸 수 있고 셋을 섞어도 됩니다. 음수와 소수는 규칙에 아무 차이를 만들지 않습니다. 더 작은 수가 더 왼쪽에 간다는 것이 규칙의 전부입니다. 다만 -20이 자릿수가 더 많은데도 -3보다 작다는 점과, 12.5가 1로 시작하는데도 4보다 크다는 점을 조심하십시오. 수의 문자를 견주지 않고 값을 견주는 것이 여기서 정확함의 전부입니다.
수를 적어 넣는 순서가 결과에 영향을 주나요?
전혀 주지 않습니다. 이 페이지는 무엇을 받든 정렬하고, 같은 값의 모음이면 들어온 순서와 무관하게 같은 출력을 냅니다. 그래서 결과를 검산할 수 있습니다. 한 번 정렬한 목록을 다시 정렬해도 출력이 똑같습니다. 주어진 값 모음에 대해 오름차순은 하나뿐이기 때문입니다. 입력의 모양이 살아남는 곳은 중복뿐이며, 5, 5, 3과 3, 5, 5는 둘 다 3, 5, 5로 정렬됩니다.
중복된 값은 지워지나요?
아니요, 그리고 그것은 의도된 것입니다. 출력은 입력을 다시 늘어놓은 것이므로, 여러분이 준 수를 준 횟수만큼 정확히 담아야 합니다. 되풀이를 지우는 것은 다른 연산이고, 이름도 다릅니다. 그렇게 하면 값이 몇 개인가, 중앙값이 무엇인가를 비롯해 목록에 관한 모든 질문의 답이 달라집니다. 서로 다른 값만 남기고 싶다면 그것은 별도의 단계여야 하고, 눈에 보이는 단계여야 합니다.
12.50을 넣었는데 왜 12.5로 돌아오나요?
끝의 0은 값의 일부가 아니고, 이 페이지는 적어 넣은 것을 베끼는 대신 각 수의 정규화된 표기를 인쇄하기 때문입니다. 같은 정규화가 +7을 7로, -0을 0으로 만듭니다. 출력이 입력의 사본과 딱 같지는 않은 유일한 지점이고, 수의 서식이 여러분에게 의미를 갖는 경우에는 알아 둘 만합니다. 예컨대 금액에서 12.50과 12.5는 같은 수이지만 사람이 읽는 느낌은 다릅니다.
큰 것부터 정렬할 수는 없나요?
이 페이지는 오름차순을 줍니다. 내림차순은 그 출력을 오른쪽에서 왼쪽으로 읽은 것이고, 더 계산할 것은 없습니다. 정렬된 목록을 뒤집으면 곧바로 역순이 되기 때문입니다. 한 방향만 제공하는 까닭은 뒤따르는 통계량이 모두 이 방향을 원하기 때문입니다. 중앙값도 사분위수도 범위도 오름차순 목록에서 정의되고, 내림차순 목록은 그것들 중 어느 것을 읽기 전에 뒤집어야 합니다.
표에서 붙여 넣은 열이 왜 거부되나요?
거의 확실히 천 단위 구분 기호 때문입니다. 이 페이지에서 쉼표 뒤에 공백이 오면 항목을 가르고, 두 숫자 사이에 공백 없이 앉은 쉼표는 소수점으로 읽힙니다. 1,500 같은 모양은 둘 중 어느 쪽도 아니어서 1500과 1.5를 구별할 수 없고, 짐작하는 대신 목록 전체를 거부합니다. 지수 표기도 같은 방식으로 거부됩니다. 1e5는 100000이 아닙니다. 붙여 넣기 전에 구분 기호를 지우십시오.

참고 문헌

관련 계산기