"기수 나무"의 만장일치 정의를 찾기가 어렵지만 대부분의 허용 된 기수 나무 정의는 압축 된 접두어 트리임을 나타냅니다. 내가 이해하기 위해 고심하는 것은이 경우 "기수"라는 용어의 중요성입니다. 컴팩트 접두어 트리의 이름이 이렇게 (즉, 기수 트리) 왜 압축되지 않은 것이 아닌지 기수 트리? 위키이 응답 할 수기수 나무에서 "기수"라는 용어의 의미
답변
, https://en.wikipedia.org/wiki/Radix : 수학 기수법에서
는, 기수 또는 염기는 위치 기수법의 수를 나타내는 데 사용되는 0을 포함 고유 숫자의 수이다. 이 9
를 통해 0 ~ 열 자리 숫자를 사용하고 있기 때문에 예를 들어, 소수점 시스템 (사용되는 가장 일반적인 시스템 오늘)의 기수는 10입니다 나무 https://en.wikipedia.org/wiki/Radix_tree :
은 유일한 자식 노드 인 노드가 부모 노드와 병합되는 공간 최적화 된 trie를 나타내는 데이터 구조입니다. 결과는 마지막 X ≥ 1
를 갖는 모든 내부 노드의 아이의 수는 적어도 R은 양의 정수 및 전력 X 2 인 기수 트리의 기수 R이다 이며
1.radix (명사)
프리미티브 단어에서 환언 봄 : 사전을 확인한다.
기수 트리의 기수는 트리의 자식 (또는 깊이)과 '희소'사이의 균형 또는 고유 한 접미어 수를 결정합니다.
편집 - 정교
모든 내부 노드의 아이의 수는
가의 단어 "ABA, 비정상, 여드름 및 심해"를 생각해 보자 적어도 기수 R입니다. 일반 접두사 트리 (또는 트라이), 모든 아크는 말씀을 단일 문자를 추가, 그래서 우리는이 :
-a-b-a-
n-o-r-m-a-l-
y-s-m-a-l-
-c-n-e-
내 도면이 약간 오해의 소지가 - 그래서, 문자는 일반적 호에 앉아 시도에 '- '는 노드이고 문자는 모서리입니다. 많은 내부 노드에는 하나의 자식이 있습니다. 이제 소형 (및 명백한) 형태 :
-a-b -a-
normal-
ysmal-
cne-
그럼 이제 우리는 세 자녀와 함께 (B 뒤에) 내부 노드를 가지고! 기수는 2의 양의 정수이므로이 경우 2입니다. 왜 2이고 3을 말하지 않습니까? 처음에는 루트에 2 명의 자녀가 있음에 유의하십시오. 또한 단어를 추가한다고 가정 해보십시오.옵션 :
- 주
b
접두사 - '비정상적으로'말 - 물론, 4 2. - 주
b
의 자식의 가장자리보다 더 크다. 그럼 방법 삽입은 공유 부분은 분할합니다 작품과 우리가해야합니다 :
관련 지점 :
-normal-ly-
-
정상은 지금 내부 노드이지만, 어린이 2 명 (한 잎)가 있습니다. - 예를 들어 여드름을 삭제하는 경우도 있습니다.
-ab-a
-normal-ly-
-
-ysmal
그래서, 우리는 여전히 유지 아이들> 2 :하지만 지금은 컴팩트 속성은 나무
트리가되도록 b
후 노드, 그것만이 아이는 이후 다시 통합해야했다.
희망이 있습니다.
@ kabanus - 나는 모든 내부 노드가 최소한 기수 r 인 _을 이해할 수 없었다. 너는 그것이 의미하는 바를 정교하게 다듬을 수 있겠는가? 왜 비 압축 Trie에는 적용 할 수 없는지! – KGhatak
@ kabanus - 인내심을 가져 주셔서 감사합니다. 비록 내가 소리가 나기 시작했다. Btw, 압축 된 Trie의 경우, 모든 내부 노드 n에 대해 min (n의 자식 수)> = 2^r이면 압축 된 trie의 기수는? 그런 Trie의 기수 r의 정의를 먼저 가질 수 있을까요? – KGhatak
방금 다른 좋은 anwer를 찾았습니다. http://stackoverflow.com/questions/21204980/what-does-radix-mean-in-a-radix-tree - 제가 이것을 더 빨리 보았 으면 좋겠어요. 보시다시피, 내부 노드에서 가능한 모든 접두사를 유지하는 데 필요한 최소한의 비트가 기수입니다. – kabanus
내가 옳은 대답은 아닙니다. 나는 트리가 기수처럼 많은 "기수"를 가지고 있다는 것을 의미합니다. 그러나 누군가이 용어를 사용했고이 방법으로 머물렀다. 더 중요한 것은 기수 트리가 trie의 압축 된 버전이기 때문에 일부 사람들은 압축 된 접두사 트리 또는 압축 된 trie라는 용어를 사용하는 것입니다. 또한 PATRICIA라는 용어를 사용하여 동일한 데이터 구조를 호출합니다. 그러나 그것에 관한 몇 가지 논쟁이 있고 위키 백과에 따르면 PATRICIA는 바이너리 문자열을 저장하는 데 사용되는 특별한 형태의 기수 트리입니다. –
나는 결국 대답을 발견하고 다른 질문에 대한 답변으로 내 이해를 게시했습니다. http://stackoverflow.com/questions/14708134/what-is-the-difference-between-trie-and-radix-trie-data -40567517 # 40567517 – KGhatak