git: 221ac7c3f423 - main - devel/rubygem-pairing_heap: Add rubygem-pairing_heap 0.3.0
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 31 Aug 2022 18:50:33 UTC
The branch main has been updated by sunpoet: URL: https://cgit.FreeBSD.org/ports/commit/?id=221ac7c3f4234f323dd8644baab9079e6353cda9 commit 221ac7c3f4234f323dd8644baab9079e6353cda9 Author: Po-Chuan Hsieh <sunpoet@FreeBSD.org> AuthorDate: 2022-08-31 18:06:33 +0000 Commit: Po-Chuan Hsieh <sunpoet@FreeBSD.org> CommitDate: 2022-08-31 18:49:28 +0000 devel/rubygem-pairing_heap: Add rubygem-pairing_heap 0.3.0 PairingHeap is a pure Ruby priority queue implementation using a pairing heap as the underlying data structure. While a pairing heap is asymptotically less efficient than the Fibonacci heap, it is usually faster in practice. This makes it a popular choice for Prim's MST or Dijkstra's algorithm implementations. PairingHeap is currently being used as the priority queue data structure in RGL. Also implementation without priority change support is provided(SimplePairingHeap), while the asymptotical complexity of the methods stay the same, bookkeeping of elements is not needed making, the constant smaller. WWW: https://github.com/mhib/pairing_heap --- devel/Makefile | 1 + devel/rubygem-pairing_heap/Makefile | 17 +++++++++++++++++ devel/rubygem-pairing_heap/distinfo | 3 +++ devel/rubygem-pairing_heap/pkg-descr | 13 +++++++++++++ 4 files changed, 34 insertions(+) diff --git a/devel/Makefile b/devel/Makefile index 23cb44d00fd5..203c44ff677e 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -6729,6 +6729,7 @@ SUBDIR += rubygem-ostruct SUBDIR += rubygem-p4ruby SUBDIR += rubygem-paint + SUBDIR += rubygem-pairing_heap SUBDIR += rubygem-paperclip-rails5 SUBDIR += rubygem-paperclip-rails50 SUBDIR += rubygem-parser diff --git a/devel/rubygem-pairing_heap/Makefile b/devel/rubygem-pairing_heap/Makefile new file mode 100644 index 000000000000..9a4c3055bcc1 --- /dev/null +++ b/devel/rubygem-pairing_heap/Makefile @@ -0,0 +1,17 @@ +PORTNAME= pairing_heap +PORTVERSION= 0.3.0 +CATEGORIES= devel rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Performant priority queue with support for changing priority + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE.txt + +USES= gem +USE_RUBY= yes + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/devel/rubygem-pairing_heap/distinfo b/devel/rubygem-pairing_heap/distinfo new file mode 100644 index 000000000000..212ff36dc267 --- /dev/null +++ b/devel/rubygem-pairing_heap/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1661950808 +SHA256 (rubygem/pairing_heap-0.3.0.gem) = 2854a7bd7aa16f86945c816bd8235c633387716b0b594ee77d8b21f709c8cadd +SIZE (rubygem/pairing_heap-0.3.0.gem) = 12800 diff --git a/devel/rubygem-pairing_heap/pkg-descr b/devel/rubygem-pairing_heap/pkg-descr new file mode 100644 index 000000000000..be11d15daf61 --- /dev/null +++ b/devel/rubygem-pairing_heap/pkg-descr @@ -0,0 +1,13 @@ +PairingHeap is a pure Ruby priority queue implementation using a pairing heap as +the underlying data structure. While a pairing heap is asymptotically less +efficient than the Fibonacci heap, it is usually faster in practice. This makes +it a popular choice for Prim's MST or Dijkstra's algorithm implementations. + +PairingHeap is currently being used as the priority queue data structure in RGL. + +Also implementation without priority change support is +provided(SimplePairingHeap), while the asymptotical complexity of the methods +stay the same, bookkeeping of elements is not needed making, the constant +smaller. + +WWW: https://github.com/mhib/pairing_heap