라이브러리

[PHP] SplHeap::top - 힙의 맨 위에서 노드를 살펴봅니다.




PHP에서 SplHeap 클래스는 최대 힙을 구현한 클래스입니다. 최대 힙은 노드의 키가 큰 노드가 루트 노드에 위치하는 힙입니다. SplHeap 클래스는 SplPriorityQueue 클래스와 유사하지만, SplPriorityQueue 클래스는 최대 힙과 최소 힙을 모두 지원합니다.

SplHeap::top


SplHeap 클래스의 top 메소드는 힙의 루트 노드의 키를 반환합니다. 루트 노드의 키가 가장 큰 노드의 키입니다.

# 예제


#hostingforum.kr
php

use SplHeap;



$heap = new SplHeap();



// 힙에 요소를 추가합니다.

$heap->insert(5);

$heap->insert(10);

$heap->insert(3);

$heap->insert(8);

$heap->insert(1);



// 힙의 루트 노드의 키를 반환합니다.

echo $heap->top(); // 출력: 10



SplHeap::extract


SplHeap 클래스의 extract 메소드는 힙의 루트 노드의 키를 반환하고, 루트 노드를 힙에서 제거합니다.

# 예제


#hostingforum.kr
php

use SplHeap;



$heap = new SplHeap();



// 힙에 요소를 추가합니다.

$heap->insert(5);

$heap->insert(10);

$heap->insert(3);

$heap->insert(8);

$heap->insert(1);



// 힙의 루트 노드의 키를 반환하고, 루트 노드를 힙에서 제거합니다.

echo $heap->extract(); // 출력: 10

echo $heap->top(); // 출력: 8



SplHeap::insert


SplHeap 클래스의 insert 메소드는 힙에 요소를 추가합니다.

# 예제


#hostingforum.kr
php

use SplHeap;



$heap = new SplHeap();



// 힙에 요소를 추가합니다.

$heap->insert(5);

$heap->insert(10);

$heap->insert(3);

$heap->insert(8);

$heap->insert(1);



// 힙의 루트 노드의 키를 반환합니다.

echo $heap->top(); // 출력: 10



SplHeap::extractAll


SplHeap 클래스의 extractAll 메소드는 힙의 모든 요소를 반환하고, 힙을 비웁니다.

# 예제


#hostingforum.kr
php

use SplHeap;



$heap = new SplHeap();



// 힙에 요소를 추가합니다.

$heap->insert(5);

$heap->insert(10);

$heap->insert(3);

$heap->insert(8);

$heap->insert(1);



// 힙의 모든 요소를 반환하고, 힙을 비웁니다.

$items = $heap->extractAll();

print_r($items); // 출력: Array ( [0] => 10 [1] => 8 [2] => 5 [3] => 3 [4] => 1 )



SplHeap::isEmpty


SplHeap 클래스의 isEmpty 메소드는 힙이 비어 있는지 여부를 반환합니다.

# 예제


#hostingforum.kr
php

use SplHeap;



$heap = new SplHeap();



// 힙이 비어 있는지 여부를 반환합니다.

echo $heap->isEmpty(); // 출력: 1



// 힙에 요소를 추가합니다.

$heap->insert(5);



// 힙이 비어 있는지 여부를 반환합니다.

echo $heap->isEmpty(); // 출력: 


  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 207 페이지

검색

게시물 검색