일반적인 문제 이해해야 할 이진 트리 공식

이해해야 할 이진 트리 공식

Jun 22, 2019 am 09:45 AM
이진 트리 공식

이해해야 할 이진 트리 공식

1. 일반 이진 트리의 속성

속성 1. 비어 있지 않은 이진 트리의 i 수준에는 최대 2^i 노드가 있습니다.

속성 2. 높이 K인 이진 트리에는 최대 2^(k+1)-1개의 노드가 있습니다.

속성 3. 비어 있지 않은 이진 트리의 경우 리프 노드 수가 n0이고 차수가 2인 노드 수가 n2이면 n0=n2+1입니다.

2, 완전 이진 트리

정의: 이진 트리에서 맨 아래 두 수준의 노드 차수만 2보다 작고, 다른 수준의 노드 차수는 모두 2입니다. 최하위 레벨의 노드는 모두 레이어의 가장 왼쪽 위치에 집중되어 있으며, 이 이진 트리를 완전 이진 트리라고 합니다.

속성 1. n 노드가 있는 완전한 이진 트리의 높이 k는 [log^2n]입니다.

속성 2. n 노드가 있는 완전한 이진 트리의 경우, 이진 트리의 모든 노드가 0에서 n으로 시작하여 위쪽(루트 노드)에서 아래쪽(리프 노드)으로 순서대로 시작하고 왼쪽에서 오른쪽으로 -1의 번호가 지정되면, 첨자 i가 있는 노드의 경우 다음이 있습니다.

(1) i=0이면 루트 노드이고 i>0이면 상위 노드가 없습니다. 상위 노드의 첨자는 ( i-1)/2.

(2) 2i+1<=n-1이면 첨자 i가 있는 노드의 왼쪽 자식 노드의 첨자는 2i+1입니다. 그렇지 않으면 첨자 i가 있는 노드에는 왼쪽 자식 노드가 없습니다.

(3) 2i+2<=n-1이면 첨자 i가 있는 노드의 오른쪽 자식 노드의 첨자는 2i+2입니다. 그렇지 않으면 첨자 i가 있는 노드에는 오른쪽 자식 노드가 없습니다.

3. 완전 이진 트리

정의: 이진 트리의 노드가 리프이거나 비어 있지 않은 두 개의 하위 트리가 있는 경우 이진 트리를 완전 이진 트리라고 합니다.

속성, 완전 이진 트리에서는 리프 노드 수가 가지 노드 수보다 1개 더 많습니다.

4. 확장 이진 트리

정의: 확장 이진 트리는 확장 후 원래 이진 트리의 노드가 2차 분기 노드가 됩니다. 즉, 원래 노드의 차수가 2이면 변경되지 않고 유지됩니다. 차수가 1이면 하나의 분기가 추가되고, 차수가 0이면 두 개의 분기가 추가됩니다.

속성 1. 확장 이진 트리에서는 외부 노드 수가 내부 노드 수보다 1개 더 많습니다.

속성 2. 확장 이진 트리의 경우 외부 경로 길이 E와 내부 경로 길이 I 간에 다음 관계가 충족됩니다. E=I+2n, 여기서 n은 내부 노드 수입니다.

자주 묻는 질문과 관련된 더 많은 기술 기사를 보려면 FAQ 칼럼을 방문하여 알아보세요!

위 내용은 이해해야 할 이진 트리 공식의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

수식효과 흐름도를 PPT에 삽입하는 자세한 방법 수식효과 흐름도를 PPT에 삽입하는 자세한 방법 Mar 26, 2024 pm 04:36 PM

1. PPT를 열고 [삽입] 탭을 클릭한 후, [일러스트] 그룹의 [smartArt] 버튼을 클릭하세요. 2. 열리는 [smartArt 그래픽 선택] 대화 상자에서 [처리]를 클릭합니다. 3. 열리는 [프로세스] 패인에서 [수식] 흐름도를 선택합니다. 4. [확인]을 클릭하면 슬라이드 패널에 [수식] 순서도가 삽입됩니다. 5. [여기에 텍스트 입력] 열에서 [텍스트]를 클릭하거나 그래픽에서 [텍스트]를 클릭하여 내용을 입력합니다. 6. 그래픽에서 도형을 선택하고 [smartArt 도구]의 [디자인] 탭을 클릭한 후, [그래픽 만들기] 그룹의 [도형 추가] 버튼을 클릭하여 도형을 추가하세요. 7. 그래픽의 모양도 선택 및 삭제할 수 있으며, 필요에 따라 스마트에서도 삭제할 수 있습니다.

Excel 테이블 수식을 작동하는 방법 Excel 테이블 수식을 작동하는 방법 Mar 20, 2024 pm 12:07 PM

업무상 엑셀 소프트웨어를 사용하다 보면 함수식을 자주 사용하게 되는데, 엑셀을 능숙하게 사용하려면 함수식의 연산에 능숙해야 합니다. 실제로 공식을 익히는 것은 어렵지 않습니다. 오늘은 가장 간단한 것부터 학습을 시작할 수 있습니다. 오늘은 곱셈 공식을 예로 들어 보겠습니다. 1. 먼저 엑셀을 엽니다. 여기서는 데모를 하고 있으므로 두 개의 데이터 세트를 무작위로 입력해야 합니다. 이제 이 두 데이터 세트의 곱을 계산해야 합니다. A열과 B열의 곱을 계산하여 아래 그림의 빨간색 원과 같이 D4에 셀을 배치하려고 합니다. 2. 그런 다음 셀에 등호를 입력하고 첫 번째 매개변수 셀 B4를 선택하고 Enter를 누릅니다. 곱셈 기호를 입력하고 두 번째 매개변수 C4를 선택합니다.

C 언어로 이진 트리의 왼쪽 보기 인쇄 C 언어로 이진 트리의 왼쪽 보기 인쇄 Sep 03, 2023 pm 01:25 PM

작업은 주어진 이진 트리의 왼쪽 노드를 인쇄하는 것입니다. 먼저 사용자는 데이터를 삽입하여 이진 트리를 생성한 다음 결과 트리의 왼쪽 보기를 인쇄합니다. 각 노드는 최대 2개의 하위 노드를 가질 수 있으므로 이 프로그램은 왼쪽 포인터가 null이 아닌 경우 노드와 연결된 왼쪽 포인터에 대해서만 반복해야 합니다. 이는 노드와 연결된 일부 데이터 또는 포인터가 있음을 의미하며 그렇지 않으면 다음과 같이 인쇄 및 표시됩니다. 출력의 왼쪽 자식. 예시입력:10324출력:102여기서 주황색 노드는 이진 트리의 왼쪽 보기를 나타냅니다. 주어진 그래프에서 데이터 1이 있는 노드는 루트 노드이므로 인쇄되고 왼쪽 자식으로 가는 대신 0을 인쇄한 다음 3으로 가서 왼쪽 자식인 2를 인쇄합니다. 재귀적 방법을 사용하여 노드 수준을 저장할 수 있습니다.

Java의 이진 트리 구조에 대한 자세한 설명 Java의 이진 트리 구조에 대한 자세한 설명 Jun 16, 2023 am 08:58 AM

이진 트리는 컴퓨터 과학의 일반적인 데이터 구조이자 Java 프로그래밍에서 일반적으로 사용되는 데이터 구조입니다. 이 기사에서는 Java의 이진 트리 구조를 자세히 소개합니다. 1. 이진 트리란 무엇입니까? 컴퓨터 과학에서 이진 트리는 각 노드에 최대 2개의 하위 노드가 있는 트리 구조입니다. 그 중 왼쪽 자식 노드는 부모 노드보다 작고, 오른쪽 자식 노드는 부모 노드보다 크다. Java 프로그래밍에서 이진 트리는 일반적으로 데이터 쿼리의 정렬, 검색 및 효율성 향상을 나타내는 데 사용됩니다. 2. Java에서 이진 트리 구현 Java에서는 이진 트리를

C 언어에서는 이진 트리의 오른쪽 보기를 인쇄합니다. C 언어에서는 이진 트리의 오른쪽 보기를 인쇄합니다. Sep 16, 2023 pm 11:13 PM

작업은 주어진 이진 트리의 오른쪽 노드를 인쇄하는 것입니다. 먼저 사용자는 이진 트리를 생성하기 위해 데이터를 삽입한 다음 결과 트리의 올바른 보기를 인쇄합니다. 위 이미지는 노드 10, 42, 93, 14, 35, 96, 57 및 88을 사용하여 생성된 이진 트리를 보여 주며 트리의 오른쪽에 있는 노드가 선택되어 표시됩니다. 예를 들어 10, 93, 57, 88은 이진 트리의 가장 오른쪽 노드입니다. 예 입력:1042931435965788출력:10935788 각 노드에는 왼쪽 포인터와 오른쪽 포인터라는 두 개의 포인터가 있습니다. 이 질문에 따르면 프로그램은 올바른 노드만 통과하면 됩니다. 따라서 노드의 왼쪽 자식을 고려할 필요가 없습니다. 오른쪽 보기는 계층 구조의 마지막 노드인 모든 노드를 저장합니다. 그러므로 우리는

Python을 사용하여 이진 트리 탐색을 구현하는 방법 Python을 사용하여 이진 트리 탐색을 구현하는 방법 Jun 09, 2023 pm 09:12 PM

일반적으로 사용되는 데이터 구조로서 이진 트리는 데이터 저장, 검색 및 정렬에 자주 사용됩니다. 이진 트리 탐색은 매우 일반적인 작업 중 하나입니다. 간단하고 사용하기 쉬운 프로그래밍 언어인 Python에는 이진 트리 탐색을 구현하는 다양한 방법이 있습니다. 이 기사에서는 Python을 사용하여 이진 트리의 선순, 순순, 후순 순회를 구현하는 방법을 소개합니다. 이진 트리의 기초 이진 트리를 순회하는 방법을 배우기 전에 이진 트리의 기본 개념을 이해해야 합니다. 이진 트리는 노드로 구성되며 각 노드에는 값과 두 개의 자식 노드(왼쪽 자식 노드와 오른쪽 자식 노드)가 있습니다.

수식 vlookup을 사용하는 방법 수식 vlookup을 사용하는 방법 Feb 19, 2024 pm 10:37 PM

VLOOKUP 공식은 Microsoft Excel에서 매우 일반적으로 사용되는 함수로, 테이블이나 데이터 세트에서 특정 값을 찾고 이와 관련된 다른 값을 반환하는 데 사용됩니다. 이번 글에서는 VLOOKUP 수식을 올바르게 사용하는 방법을 알아 보겠습니다. VLOOKUP 함수의 기본 구문은 다음과 같습니다. VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup]) 여기서: 조회

이진 트리의 이등변삼각형 수 이진 트리의 이등변삼각형 수 Sep 05, 2023 am 09:41 AM

이진 트리는 각 노드가 최대 2개의 하위 노드를 가질 수 있는 데이터 구조입니다. 이 아이들을 각각 왼쪽 아이들, 오른쪽 아이들이라고 부릅니다. 부모 배열 표현이 주어졌다고 가정하면 이를 사용하여 이진 트리를 만들어야 합니다. 이진 트리에는 여러 개의 이등변삼각형이 있을 수 있습니다. 우리는 이 이진 트리에서 가능한 이등변삼각형의 총 개수를 찾아야 합니다. 이 기사에서는 C++에서 이 문제를 해결하기 위한 몇 가지 기술을 살펴보겠습니다. 문제를 이해하면 상위 배열이 제공됩니다. 배열 인덱스가 트리 노드의 값을 형성하고 배열의 값이 해당 특정 인덱스의 상위 노드를 제공하도록 이진 트리 형식으로 표현해야 합니다. -1은 항상 루트 부모입니다. 아래에는 배열과 이진 트리 표현이 나와 있습니다. 상위 배열=[0,-1,3,1,