개인 재정 알고리즘에서 사용되는 바이너리 힙 및 이진 검색 트리 - 더미

알고리즘에서 사용되는 바이너리 힙 및 이진 검색 트리 - 더미

비디오: Data Structures: Crash Course Computer Science #14 2024

비디오: Data Structures: Crash Course Computer Science #14 2024
Anonim

특별한 종류의 트리 구조는 바이너리 힙 ()으로 각 노드 요소를 특별한 순서로 배치합니다. 검색 트리를 사용하여 데이터를 빠르게 찾을 수 있습니다. 데이터 항목을 가져 와서 트리에 정렬 된 순서로 배치 한 다음 해당 트리를 검색하는 것이 정보를 찾는 더 빠른 방법 중 하나입니다.

바이너리 힙에서 루트 노드는 항상 가장 작은 값을 포함합니다. 브랜치를 볼 때 상위 레벨 브랜치는 항상 하위 브랜치와 브랜치보다 작은 값을가집니다. 그 효과는 검색이 매우 효율적으로되도록 균형 잡힌 예측 가능한 순서로 나무를 유지하는 것입니다. 비용은 나무 균형을 유지하는 것입니다.

응용 프로그램에서 수행하는 모든 작업 중에서 검색은 시간이 많이 걸리고 가장 많이 요구되는 작업입니다. 데이터를 추가하고 나중에 정렬하는 데 약간의 시간이 걸리지 만 데이터 집합을 만들고 유지하는 이점은 데이터 집합을 사용하여 유용한 작업을 수행하는 것에서 비롯됩니다. 이는 중요한 정보를 검색하는 것을 의미합니다. 결과적으로 CRUD 기능의 효율성이 떨어지거나 정렬 루틴이 적합하지 않은 경우도있을 수 있지만 가능한 한 효율적으로 검색을 진행해야합니다. 유일한 문제는 절대적인 효율성으로 모든 작업을 수행하는 검색이 없으므로 검색 루틴의 일부로 수행 할 것으로 예상되는 것을 기준으로 옵션을 평가해야한다는 것입니다.

BST를 사용할 때의 키 배열.

키가 작은 숫자가 왼쪽에 나타나고 큰 숫자가 오른쪽에 나타나는 순서를 따르는 것에 유의하십시오. 루트 노드에는 키 범위의 중간에있는 값이 들어있어 BST가 키를 저장하는 데 쉽게 이해할 수있는 균형 잡힌 접근 방식을 제공합니다. 이 배열을 여기에 표시된 바이너리 힙과 대조하십시오.

바이너리 힙을 사용할 때 키 배열.

각 레벨은 이전 레벨보다 작은 값을 포함하고 루트는 트리의 최대 키 값을 포함합니다. 또한이 특별한 경우에는 왼쪽에 작은 값이 표시되고 오른쪽에 큰 값이 표시됩니다 (이 순서는 엄격하게 적용되지는 않지만). 그림은 실제로

바이너리 최대 힙을 묘사합니다. 루트가 가장 낮은 키 값을 포함하고 각 레벨이 더 높은 값으로 빌드되고 가장 높은 값이 리프의 일부로 나타나는 2 진 최소 힙 을 작성할 수도 있습니다. 앞서 언급했듯이 BST는 검색을 수행 할 때 바이너리 힙보다 몇 가지 장점이 있습니다. 다음 목록은 이러한 장점에 대한 몇 가지 주요 내용을 제공합니다. 요소 검색은 O (log n) 시간이 필요하며 이진 힙의 O (n) 시간과 대조됩니다.

요소를 순서대로 인쇄하려면 O (log n) 시간 만 필요하며 이진 힙의 경우 O (n log n) 시간과 대조됩니다.

  • 바닥과 천장을 찾으려면 O (log n) 시간이 필요합니다.
  • K 번째 가장 작은 / 가장 큰 요소를 찾으려면 트리가 올바르게 구성되어있을 때 O (log n) 시간이 필요합니다.
  • 시간이 중요한지 여부는 신청서에 따라 다릅니다. BST는 검색에 더 많은 시간을 보내고 트리를 만드는 데 드는 시간을 줄이는 데 가장 적합합니다. 바이너리 힙은 키가 규칙적으로 변경되는 동적 상황에서 가장 잘 작동하는 경향이 있습니다. 바이너리 힙은 다음 목록에서 설명하는 것처럼 이점을 제공합니다.
  • 바이너리 힙은 배열에 의존하기 때문에 필요한 구조를 만드는 데 필요한 리소스가 더 적습니다.

바이너리 힙을 구축하려면 O (n) 시간이 필요하며 BST와는 대조적으로 O (n log n) 시간이 필요합니다.

  • 포인터를 사용하여 트리를 구현할 필요가 없습니다.
  • 바이너리 힙 변형 (예: 피보나치 힙)은 O (1) 시간의 키 시간을 늘리거나 줄이는 것과 같은 이점을 제공합니다.
알고리즘에서 사용되는 바이너리 힙 및 이진 검색 트리 - 더미

편집자의 선택

Photoshop Elements 14에서의 헤이즈 제거 방법 - 인형

Photoshop Elements 14에서의 헤이즈 제거 방법 - 인형

Photoshop Elements 14는 유용하고 쉬운 사진에서 안개를 빠르게 제거하는 기능입니다. 공기, 먼지, 흙 등에 가벼운 타격 입자로 인한 헤이즈는 날씨와 시간으로 더욱 강화 될 수 있습니다. 때로는 이미지의 대비 및 선명도를 높이면 이미지 품질을 낮추는 데 도움이 될 수 있습니다.

Photoshop Elements 9의 빠른 편집 모드에서 이미지 편집 방법 - Photoshop의 인력

Photoshop Elements 9의 빠른 편집 모드에서 이미지 편집 방법 - Photoshop의 인력

Elements, Edit Quick 모드는 이미지의 전후 미리보기와 같은 몇 가지 고유 한 기능과 함께 기본 수정 도구를 제공하는 편집 전체 모드의 축소 버전입니다. 빠른 수정 모드에서 사진을 복구 할 때 따라갈 수있는 단계별 워크 플로우는 다음과 같습니다. Photoshop Elements에서 하나 이상의 사진을 선택하십시오.

Photoshop Elements 10의 빠른 사진 편집 모드에서 편집하는 방법 - 인형

Photoshop Elements 10의 빠른 사진 편집 모드에서 편집하는 방법 - 인형

빠른 사진 편집 모드 는 전체 사진 편집 모드의 축소 버전으로 기본 고정 도구를 편리하게 제공하고 이미지의 사전 및 사후 미리보기와 같은 몇 가지 고유 한 기능을 토스합니다. 빠른 사진 편집 모드에서 사진을 복구하기 위해 따라갈 수있는 단계별 워크 플로가 있습니다.

편집자의 선택

페이스 북에서 친구가되는 것 - 인형

페이스 북에서 친구가되는 것 - 인형

여러면에서 페이스 북 친구는 실생활 친구와 같은. 이들은 당신과 어울리고, 연락하고, 관심을 가지고 있고, 친구로 공개적으로 인정하고 싶은 사람들입니다. 이들은 Facebook에서 만난 사람들이 아닙니다. 오히려, 그들은 당신이 전화로 부르는 사람들입니다; 멈추고 따라 잡으십시오.

Facebook 메신저는 무엇입니까? - 인형

Facebook 메신저는 무엇입니까? - 인형

Facebook Messenger는 Facebook에 내장 된 인스턴트 메시징 기능입니다. 메신저는 원래 2011 년에 시작되어 그 성공에 힘 입어 2014 년에 등장한 전용 응용 프로그램과 웹 사이트가 생겨났습니다. 응용 프로그램과 웹 사이트는 Facebook 데이터베이스에 연결되고 인앱 Facebook 메시징 서비스를 대신하는 인스턴트 메시징 서비스입니다. 그것은 허용합니다 ...

Aquila Facebook Drone은 무엇입니까? - 인형

Aquila Facebook Drone은 무엇입니까? - 인형

Aquila Drone은 데이터 연결이없는 세계의 외딴 지역에 인터넷을 가져 오려는 Facebook의 시도입니다. 소셜 미디어 거물에 의한이 이니셔티브는 태양열로 가동되는 특수한 무인 항공기를 사용하려고합니다. 무인 항공기는 구역 위를 가리 키도록 설계되어 있으며, 무인 항공기 없이도 웹 연결이 가능합니다. Credit : ...

편집자의 선택

코칭 풋볼 인형 용 치트 시트 - 인형

코칭 풋볼 인형 용 치트 시트 - 인형

코치 풋볼은 당신의 선수들에게 동기를 부여합니다. 연습과 게임을위한 올바른 장비 공급; 축구 경기 전, 경기 중 및 경기 후에 시설과 팀을 준비시켜야합니다.

축구 코치는 다른 시대의 어린이들에게 맞춰져 있습니다 - 인형

축구 코치는 다른 시대의 어린이들에게 맞춰져 있습니다 - 인형

축구 코칭 책임의 일부는 알고 이해하고 있습니다 특정 나이 수준에서 게임을하는 젊은이의 육체적으로나 감정적으로 모두 무엇을 기대해야합니다. 이 연령대의 6 세 이하 아동을 코칭하는 것은 아마도 전에는 축구를 해보지 않았을 것이고, 이번 시즌은 매우 잘할 것입니다.

축구 코치의 하프 타임 팀과의 대화 - 인형

축구 코치의 하프 타임 팀과의 대화 - 인형

터치 다운을 기록하고, 패스를 떨어 뜨리고, 다이빙 태클을 만들고, 공을 더듬는 등 모든 종류의 것들을 볼 수 있습니다. 선수가 하프 타임을 위해 필드에서 벗어날 때, 머리 속에 많은 정보를 갖게되며 많은 시간을 소모하지 않게됩니다 ...