Live briefing
Everything about Heap's algorithm
Method of generating all permutations of n objects
Heap's algorithm generates all possible permutations of n objects. It was first proposed by B. R. Heap in 1963. The algorithm minimizes movement: it generates each permutation from the previous one by interchanging a single pair of elements; the other n−2 elements are not disturbed. In a 1977 review of permutation-generating algorithms, Robert Sedgewick concluded that it was at that time the most effective algorithm for generating permutations by computer. Wikipedia →
🧭 Start here: a 6-step reading path
- Read the overview: Heap's algorithmA 5-minute orientation
- Skim a recent paper: Optimal Configuration of a Hybrid Photovoltaic/Wind Turbine/Biomass/Hydro-Pumped Storage-Based Energy System Using a Heap-Based Optimization AlgorithmInfluential work since 2022
- Pick up a classic book: Introduction to AlgorithmsThe most-reprinted book on the subject
- Read the landmark paper: An efficient agglomerative clustering algorithm using a heapCited 94 times
- Go sideways: Merge algorithmA closely related topic
- Go sideways: Insertion sortA closely related topic
📖 Definitions
No dictionary entry for this exact phrase.
🗂️ The subject at a glance
🏆 Landmark papers (most cited)
An efficient agglomerative clustering algorithm using a heap
Solving of Optimal Power Flow Problem Including Renewable Energy Resources Using HEAP Optimization Algorithm
An improved heap optimization algorithm for efficient energy management based optimal power flow model
An Optimal Algorithm for Selection in a Min-Heap
Observations on student misconceptions—A case study of the Build – Heap Algorithm
An efficient algorithm for heap storage allocation
Estimation of electrical parameters of photovoltaic panels using heap‐based algorithm
A heap-based algorithm for the study of one-dimensional particle systems
🆕 Influential since 2022
Optimal Configuration of a Hybrid Photovoltaic/Wind Turbine/Biomass/Hydro-Pumped Storage-Based Energy System Using a Heap-Based Optimization Algorithm
A heap-based algorithm with deeper exploitative feature for optimal allocations of distributed generations with feeder reconfiguration in power distribution networks
An Efficient Heap Based Optimizer Algorithm for Feature Selection
RVH-Cover: A Resultant-Vector and Heap-Based WSN Coverage Optimization Algorithm
Combined Size and Shape Optimization of Truss Structures Using the Heap-Based Optimizer (HBO) Algorithm
📚 Books worth reading
Introduction to AlgorithmsThomas H. Cormen, Charles E. Leiserson · 1990
HackingJon Erickson, Jon Erickson · 2003
Data structures and algorithms in JavaMichael T. Goodrich, Roberto Tamassia · 2001
Data structures and algorithm analysis in CMark Allen Weiss · 1993
Data structures & algorithm analysis in JavaMark Allen Weiss · 1999
Mastering algorithms with CKyle Loudon, Andy Oram · 1999
Data structures and algorithms in JavaAdam Drozdek · 2001
Computer algorithmsEllis Horowitz · 1997
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
🔗 Related topics
- Merge algorithm Merge algorithms are a family of algorithms that take multiple sorted lists as input and produce a single list as output, containing all the elements of…
- Insertion sort Insertion sort is a simple sorting algorithm that builds the final sorted array (or list) one item at a time by comparisons. It is much less efficient…
- Bogosort In computer science, bogosort (also known as permutation sort and stupid sort) is a sorting algorithm based on the generate and test paradigm. The function…
- Fisher–Yates shuffle The Fisher–Yates shuffle is an algorithm for shuffling a finite sequence. The algorithm takes a list of all the elements of the sequence, and continually…
- Block sort Block sort, or block merge sort, is a sorting algorithm combining at least two merge operations with an insertion sort to arrive at O(n log n) (see Big…
- Selection sort In computer science, selection sort is an in-place comparison sorting algorithm. It has a O(n2) time complexity, which makes it inefficient on large lists…
- Quicksort Quicksort is an efficient, general-purpose sorting algorithm. Quicksort was developed by British computer scientist Tony Hoare in 1959 and published in…
- Min-max heap In computer science, a min-max heap is a complete binary tree data structure which combines the usefulness of both a min-heap and a max-heap, that is,…