kizarrd10   2년 전

일반적인 의미의 사전 순은 lexicographic order 아닌가요?

예를들어 사전순 출력이라면 10 9가 9 10보다 순서가 앞이어야 하는데 그렇지 않은 것 같습니다. 

djm03178   2년 전

수에 대해 사전순이라는 표현을 쓰면 그 수들간의 대소관계가 기준이 됩니다.

kizarrd10   2년 전

이해가 가지 않습니다. 사전순이라는 말의 뜻이 숫자간의 크기를 비교하는 것이 아니라 문자/단어로서 생각한다는 의미 아닌가요?
수의 대소관계를 기준으로 하려면 오름차순이나 비내림차순이라고 표현해야 한다고 생각합니다. 

djm03178   2년 전

첫 글에서 lexicographic order라고 하셨는데 그것부터가 문자에만 해당하는 개념이 아닙니다. 모든 Totally ordered set에 대해서 적용할 수 있는 용어입니다.

https://en.wikipedia.org/wiki/...

kizarrd10   2년 전

제 말은 사전 순서의 개념이 문자에만 해당하는 개념이라는 것이 아닙니다.
만약 수열로된 사전을 편찬한다면 마치 사전에서 단어를 찾을때의 순서처럼,
10 9 를 9 10 보다 앞의 페이지에서 발견하도록 위치시키는 것이 숫자에 사전순서를 적용하는 방법이라는 것입니다.
위키피디아에서 인용하신 내용이 "lexicographic order에 따르면 9 10을 10 9보다 먼저 위치시켜야 한다"는 말의 근거처럼 보이지는 않습니다. 
읽어보니 해당 페이지에도 두 수의 길이가 같을 경우, 수의 크기가 다른 자릿수 중 첫번째 자릿수의 크기가 더 큰 것이 사전순서상 더 큰 수라는 내용이 있습니다. 
an integer is larger than another one if either it has more digits (ignoring leading zeroes) or the number of digits is the same and the first (most significant) digit which differs is larger. 

djm03178   2년 전

또한 이 문제에서는 각각의 수에 대한 대소가 아니라 수열이나 사전순이 어떻게 정의되는지 봐야 합니다.

수열에 대한 사전순이라는 것은 그 수열의 첫 번째 원소부터 차례대로 비교하면서 처음으로 달라지는 수가 더 작은 것이 우선합니다. 따라서 9 10과 10 9는 첫 번째 원소끼리 비교했을 때 9가 10보다 작으므로 9 10이 우선하게 되는 것입니다. 이를 '9' '1' '0'과 '1' '0' '9'를 비교하는 것과 동일하게 생각하면 안 됩니다. 왜냐하면, 문제에서 요구하는 것은 '수열'의 사전순이기 때문입니다. 10은 두 개의 문자로 분리될 수 있는 객체가 아니라, 그 자체로 10이라는 값을 가진 수이고 수열 내에서 하나의 원소를 담당합니다.

djm03178   2년 전

(정)수열의 사전순과 문자열의 사전순을 비교하자면,

  • 모든 정수의 집합은 집합이고, 모든 문자의 집합도 집합입니다.
  • 주목할 점은 여기서 하나의 '정수'와 하나의 '문자'가 서로 대등한 개념이라는 것입니다. '정수를 10진수로 표기한 문자열의 각 문자'가 아니라, 각각의 정수 자체가 하나의 값입니다.
  • 모든 정수는 서로 대소관계를 가릴 수 있으며, 모든 문자도 서로 대소관계를 가릴 수 있습니다.
  • 수열은 정수가 0개 이상 연속된 것이며, 문자열은 문자가 0개 이상 연속된 것입니다.
  • 수열의 사전순은 앞의 원소부터 차례대로 보면서 처음으로 달라지는 수가 더 작은 것이 우선하는 것을 말합니다. 마찬가지로, 문자열의 사전순은 문자들을 차례대로 보면서 처음으로 달라지는 문자가 더 작은 것이 우선하는 것을 말합니다.

djm03178   2년 전

수열의 사전순과 문자열의 사전순이 본질적으로 같으므로, 다음과 같이 치환해 봅시다.

9 = 9번째 알파벳인 I

10 = 10번째 알파벳인 J

9<10이고, I<J입니다.

9 10은 I J로 나타낼 수 있고, 10 9는 J I로 나타낼 수 있습니다.

I J가 J I보다 사전순으로 우선하는 것은 명확합니다. 따라서 마찬가지로 9 10이 10 9보다 우선합니다.

kizarrd10   2년 전

그 말은 제 해석과 의미가 같지만 저는 두 수의 자릿수의 개수가 같은 경우만 언급한 것입니다. 

수열의 크기와 수의 크기 개념을 혼동했다는 것을 알게 되었습니다.

저는 10 9와 9 10 에서 1과 9를 같은 자리의 값으로 보았지만, 수열의 각 원소를 숫자의 각 자릿수라고 생각하면 10과 9가 같은 자리인 것이네요. 
답변 감사드립니다. 

djm03178   2년 전

아 저도 답글의 의미를 잘못 이해했었네요. 아무튼 이해되셨으니 다행입니다.

댓글을 작성하려면 로그인해야 합니다.