Title: Heap & 우선순위 큐 · Issue #1 · SquirtlesAlgorithmStudy/SquirtlesAlgorithmStudyS8 · GitHub
Open Graph Title: Heap & 우선순위 큐 · Issue #1 · SquirtlesAlgorithmStudy/SquirtlesAlgorithmStudyS8
X Title: Heap & 우선순위 큐 · Issue #1 · SquirtlesAlgorithmStudy/SquirtlesAlgorithmStudyS8
Description: 힙 Heap 완전 이진 트리의 일종으로 두가지 조건 충족 완전 이진 트리 최대 힙 (부모 노드값 > 자식 노드값) , 최소 힙 (부모 노드 값 < 자식 노드값) 우선순위 큐 Priority Queue 우선순위 큐는 각 요소가 우선순위를 가지고 있으며, 우선순위가 높은 요소가 먼저 나가는 특수한 큐 힙을 사용하여 효율적으로 구현 가능 삽입 - 새로운 요소를 힙의 마지막에 추가한 후 힙 정렬 삭제 - 힙의 루트 요소를 제거 ...
Open Graph Description: 힙 Heap 완전 이진 트리의 일종으로 두가지 조건 충족 완전 이진 트리 최대 힙 (부모 노드값 > 자식 노드값) , 최소 힙 (부모 노드 값 < 자식 노드값) 우선순위 큐 Priority Queue 우선순위 큐는 각 요소가 우선순위를 가지고 있으며, 우선순위가 높은 요소가 먼저 나가는 특수한 큐 힙을 사용하여 효율적으로 구현 가능 삽입 - 새로운 요...
X Description: 힙 Heap 완전 이진 트리의 일종으로 두가지 조건 충족 완전 이진 트리 최대 힙 (부모 노드값 > 자식 노드값) , 최소 힙 (부모 노드 값 < 자식 노드값) 우선순위 큐 Priority Queue 우선순위 큐는 각 요소가 우선순위를 가지고 있으며, 우선순위가 높은 요소가 먼저 나가는 특수한 큐 힙을 사용하여 효율적으로 구현 가능 삽입 -...
Opengraph URL: https://github.com/SquirtlesAlgorithmStudy/SquirtlesAlgorithmStudyS8/issues/1
X: @github
Domain: patch-diff.githubusercontent.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Heap \u0026 우선순위 큐","articleBody":"## 힙 Heap\r\n\r\n완전 이진 트리의 일종으로 두가지 조건 충족\r\n\r\n1. 완전 이진 트리\r\n2. 최대 힙 (부모 노드값 \u003e 자식 노드값) , 최소 힙 (부모 노드 값 \u003c 자식 노드값)\r\n\r\n## 우선순위 큐 Priority Queue\r\n\r\n우선순위 큐는 각 요소가 우선순위를 가지고 있으며, 우선순위가 높은 요소가 먼저 나가는 특수한 큐\r\n\r\n1. 힙을 사용하여 효율적으로 구현 가능\r\n2. 삽입 - 새로운 요소를 힙의 마지막에 추가한 후 힙 정렬\r\n3. 삭제 - 힙의 루트 요소를 제거 하고 마지막 요소를 루트로 이동시킨 후 힙 정렬\r\n * 삽입: O(log n)\r\n * 삭제 (Olog n)\r\n * 탐색 (루트 요소 확인): O(1)\r\n \r\n \r\n### STL을 이용한 Heap 구현\r\n\r\n```cpp\r\n#include \u003ciostream\u003e\r\n#include \u003cvector\u003e\r\n#include \u003calgorithm\u003e\r\n\r\nint main() {\r\n std::vector\u003cint\u003e heap = {10, 20, 30, 5, 15};\r\n\r\n // 힙으로 변환\r\n std::make_heap(heap.begin(), heap.end());\r\n\r\n std::cout \u003c\u003c \"Initial max-heap: \";\r\n for (int i : heap) std::cout \u003c\u003c i \u003c\u003c \" \";\r\n std::cout \u003c\u003c std::endl;\r\n\r\n // 힙에 요소 추가\r\n heap.push_back(99);\r\n std::push_heap(heap.begin(), heap.end());\r\n\r\n std::cout \u003c\u003c \"After adding an element: \";\r\n for (int i : heap) std::cout \u003c\u003c i \u003c\u003c \" \";\r\n std::cout \u003c\u003c std::endl;\r\n\r\n // 힙에서 최대 요소 제거\r\n std::pop_heap(heap.begin(), heap.end());\r\n heap.pop_back();\r\n\r\n std::cout \u003c\u003c \"After removing the max element: \";\r\n for (int i : heap) std::cout \u003c\u003c i \u003c\u003c \" \";\r\n std::cout \u003c\u003c std::endl;\r\n\r\n return 0;\r\n}\r\n```\r\n ### 우선순위 큐\r\n```cpp\r\n\r\n#include \u003ciostream\u003e\r\n#include \u003cqueue\u003e\r\n#include \u003cvector\u003e\r\n\r\nstruct Task {\r\n int priority;\r\n std::string description;\r\n\r\n // 커스텀 비교 함수 (작은 값이 높은 우선순위)\r\n bool operator\u003c(const Task\u0026 other) const {\r\n return priority \u003e other.priority;\r\n }\r\n};\r\n\r\nint main() {\r\n std::priority_queue\u003cTask\u003e taskQueue;\r\n\r\n // 요소 삽입\r\n taskQueue.push({1, \"Low priority task\"});\r\n taskQueue.push({3, \"High priority task\"});\r\n taskQueue.push({2, \"Medium priority task\"});\r\n\r\n std::cout \u003c\u003c \"Tasks in priority order: \";\r\n while (!taskQueue.empty()) {\r\n Task t = taskQueue.top();\r\n std::cout \u003c\u003c \"(\" \u003c\u003c t.priority \u003c\u003c \", \" \u003c\u003c t.description \u003c\u003c \") \";\r\n taskQueue.pop();\r\n }\r\n std::cout \u003c\u003c std::endl;\r\n\r\n return 0;\r\n}\r\n```\r\n \r\n ","author":{"url":"https://github.com/psychehose","@type":"Person","name":"psychehose"},"datePublished":"2024-07-29T11:57:54.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":0},"url":"https://github.com/1/SquirtlesAlgorithmStudyS8/issues/1"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:0925ae3a-51a3-77c3-d46c-b686970e45c2 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | CC6A:2C338B:359432A:4A47B27:6977CBE4 |
| html-safe-nonce | 4d4de6c46145c03f606c3ffa85f298b4b30cf3112c336aee735236e72dfb3de9 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDQzZBOjJDMzM4QjozNTk0MzJBOjRBNDdCMjc6Njk3N0NCRTQiLCJ2aXNpdG9yX2lkIjoiMzU1MDQyMTA5NzY2NjU2MzA0NCIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 924f425ecf36134ab8704b9dea2ce081bfd1a559a313feca5ed4b66866aaad2d |
| hovercard-subject-tag | issue:2435222137 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/SquirtlesAlgorithmStudy/SquirtlesAlgorithmStudyS8/1/issue_layout |
| twitter:image | https://opengraph.githubassets.com/53d26fada26f4058c0e193903e70d899646a62048cf49ddac8027182455f931b/SquirtlesAlgorithmStudy/SquirtlesAlgorithmStudyS8/issues/1 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/53d26fada26f4058c0e193903e70d899646a62048cf49ddac8027182455f931b/SquirtlesAlgorithmStudy/SquirtlesAlgorithmStudyS8/issues/1 |
| og:image:alt | 힙 Heap 완전 이진 트리의 일종으로 두가지 조건 충족 완전 이진 트리 최대 힙 (부모 노드값 > 자식 노드값) , 최소 힙 (부모 노드 값 < 자식 노드값) 우선순위 큐 Priority Queue 우선순위 큐는 각 요소가 우선순위를 가지고 있으며, 우선순위가 높은 요소가 먼저 나가는 특수한 큐 힙을 사용하여 효율적으로 구현 가능 삽입 - 새로운 요... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | psychehose |
| hostname | github.com |
| expected-hostname | github.com |
| None | 173f8c2eae2e017de550dd28a9ea88ad5c1e52c70df7ea05bcd820330b3b2fec |
| turbo-cache-control | no-preview |
| go-import | github.com/SquirtlesAlgorithmStudy/SquirtlesAlgorithmStudyS8 git https://github.com/SquirtlesAlgorithmStudy/SquirtlesAlgorithmStudyS8.git |
| octolytics-dimension-user_id | 78294988 |
| octolytics-dimension-user_login | SquirtlesAlgorithmStudy |
| octolytics-dimension-repository_id | 777265130 |
| octolytics-dimension-repository_nwo | SquirtlesAlgorithmStudy/SquirtlesAlgorithmStudyS8 |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 777265130 |
| octolytics-dimension-repository_network_root_nwo | SquirtlesAlgorithmStudy/SquirtlesAlgorithmStudyS8 |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 7b19554cad55a536fac18eeedb416dd87c37b1f5 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width