rstackdeque: Persistent Fast Amortized Stack and Queue Data Structures

Provides fast, persistent (side-effect-free) stack, queue and deque (double-ended-queue) data structures. While deques include a superset of functionality provided by queues, in these implementations queues are more efficient in some specialized situations. See the documentation for rstack, rdeque, and rpqueue for details.

Author
Shawn T. O'Neil
Date of publication
2015-04-13 22:27:44
Maintainer
Shawn T. O'Neil <shawn.oneil@cgrb.oregonstate.edu>
License
MIT + file LICENSE
Version
1.1.1
URLs

View on CRAN

Man pages

as.data.frame.rdeque
Convert an rdeque to a data.frame
as.data.frame.rpqueue
Convert an rpqueue to a data.frame
as.data.frame.rstack
Convert an rstack to a data.frame
as.list.rdeque
Convert an rdeque to a list
as.list.rpqueue
Convert an rpqueue to a list
as.list.rstack
Convert an rstack to a list
as.rdeque
Create a pre-filled rdeque from a given input
as.rdeque.default
Default method for converting to an rdeque
as.rpqueue
Create a pre-filled rpqueue from a given input
as.rpqueue.default
Default method for converting to an rpqueue
as.rstack
Create an rstack pre-filled from a given input
as.rstack.default
Default method for converting to an rstack
empty
Check if an rstack, rdeque, or rpqueue is empty
empty.rdeque
Check if an rdeque is empty
empty.rpqueue
Check if an rpqueue is empty
empty.rstack
Check if an rstack is empty
fixd
Fix an rdeque
fixd.rdeque
Fix an rdeque
head.rdeque
Return the first n elements of an rdeque as an rdeque
head.rpqueue
Return the head (front) of an rpqueue
head.rstack
Return the head (top) of an rstack
insert_back
Insert an element into the back of an rdeque or rpqueue
insert_back.rdeque
Insert an element into the back of an rdeque
insert_back.rpqueue
Insert an element into the back of an rpqueue
insert_front
Insert an element into the front of an rdeque
insert_front.rdeque
Insert an element into the front of an rdeque
insert_top
Insert an element onto the top of an rstack
insert_top.rstack
Insert an element onto the top of an rstack
length.rdeque
Return the number of elements in an rdeque
length.rpqueue
Return the number of elements in an rpqueue
length.rstack
Return the number of elements in an rstack
makeequal
Generic maintenance function for rpqueues
makeequal.rpqueue
Maintenance function for rpqueues
peek_back
Return the data element at the back of an rdeque
peek_back.rdeque
Return the data element at the back of an rdeque
peek_back-set
Assign to/modify the back of an rdeque
peek_back-set-.rdeque
Assign to/modify the back of an rdeque
peek_front
Return the data element at the front of an rdeque
peek_front.rdeque
Return the data element at the front of an rdeque
peek_front.rpqueue
Return the data element at the front of an rpqueue
peek_front-set
Assign to/modify the front of an rdeque or rpqueue
peek_front-set-.rdeque
Assign to/modify the front of an rdeque
peek_front-set-.rpqueue
Assign to/modify the front of an rpqueue
peek_top
Return the data element at the top of an rstack
peek_top.rstack
Return the data element at the top of an rstack
peek_top-set
Assign to/modify the top of an rstack
peek_top-set-.rstack
Assign to/modify the top of an rstack
print.rdeque
Print an rdeque
print.rpqueue
Print an rpqueue
print.rstack
Print an rstack
rdeque
Create a new empty rdeque
rev.rstack
Reverse an rstack
rotate
Generic maintenance function for rpqueues
rotate.rpqueue
Maintenance function for rpqueues
rpqueue
Create a new empty rpqueue
rstack
Create a new, empty rstack
rstacknode
Internal structure used by rstacks, rdeques, and rpqueues
without_back
Return a version of an rdeque without the back element
without_back.rdeque
Return a version of an rdeque without the back element
without_front
Return a version of an rdeque or rpqueue without the front...
without_front.rdeque
Return a version of an rdeque without the front element
without_front.rpqueue
Return a version of an rpqueue without the front element
without_top
Return a version of an rstack without the top element
without_top.rstack
Return a version of an rstack without the top element

Files in this package

rstackdeque
rstackdeque/tests
rstackdeque/tests/testthat.R
rstackdeque/tests/testthat
rstackdeque/tests/testthat/test.rpqueue.R
rstackdeque/tests/testthat/test.stack.R
rstackdeque/tests/testthat/test.rdeque.R
rstackdeque/NAMESPACE
rstackdeque/R
rstackdeque/R/as.rpqueue.default.R
rstackdeque/R/fixd.rdeque.R
rstackdeque/R/insert_front.R
rstackdeque/R/rstacknode.R
rstackdeque/R/empty.R
rstackdeque/R/empty.rstack.R
rstackdeque/R/as.rpqueue.R
rstackdeque/R/as.data.frame.rdeque.R
rstackdeque/R/without_front.R
rstackdeque/R/peek_back-set.rdeque.R
rstackdeque/R/makeequal.rpqueue.R
rstackdeque/R/as.rstack.R
rstackdeque/R/as.list.rdeque.R
rstackdeque/R/peek_front.rpqueue.R
rstackdeque/R/peek_front-set.rpqueue.R
rstackdeque/R/without_top.rstack.R
rstackdeque/R/peek_top.R
rstackdeque/R/as.rstack.default.R
rstackdeque/R/peek_back-set.R
rstackdeque/R/peek_top-set.R
rstackdeque/R/insert_back.R
rstackdeque/R/head.rstack.R
rstackdeque/R/length.rpqueue.R
rstackdeque/R/peek_front.rdeque.R
rstackdeque/R/peek_top-set.rstack.R
rstackdeque/R/as.data.frame.rpqueue.R
rstackdeque/R/insert_top.R
rstackdeque/R/rdeque.R
rstackdeque/R/empty.rdeque.R
rstackdeque/R/peek_front-set.R
rstackdeque/R/head.rdeque.R
rstackdeque/R/print.rdeque.R
rstackdeque/R/rotate.R
rstackdeque/R/insert_back.rpqueue.R
rstackdeque/R/insert_back.rdeque.R
rstackdeque/R/length.rdeque.R
rstackdeque/R/without_back.rdeque.R
rstackdeque/R/makeequal.R
rstackdeque/R/empty.rpqueue.R
rstackdeque/R/as.rdeque.default.R
rstackdeque/R/as.rdeque.R
rstackdeque/R/as.data.frame.rstack.R
rstackdeque/R/peek_front-set.rdeque.R
rstackdeque/R/head.rpqueue.R
rstackdeque/R/peek_back.R
rstackdeque/R/insert_front.rdeque.R
rstackdeque/R/print.rstack.R
rstackdeque/R/as.list.rpqueue.R
rstackdeque/R/rev.rstack.R
rstackdeque/R/without_front.rpqueue.R
rstackdeque/R/as.list.rstack.R
rstackdeque/R/without_front.rdeque.R
rstackdeque/R/print.rpqueue.R
rstackdeque/R/rpqueue.R
rstackdeque/R/fixd.R
rstackdeque/R/rstack.R
rstackdeque/R/without_top.R
rstackdeque/R/insert_top.rstack.R
rstackdeque/R/peek_back.rdeque.R
rstackdeque/R/without_back.R
rstackdeque/R/length.rstack.R
rstackdeque/R/peek_top.rstack.R
rstackdeque/R/rotate.rpqueue.R
rstackdeque/R/peek_front.R
rstackdeque/MD5
rstackdeque/DESCRIPTION
rstackdeque/man
rstackdeque/man/insert_back.rdeque.Rd
rstackdeque/man/insert_top.rstack.Rd
rstackdeque/man/as.list.rdeque.Rd
rstackdeque/man/without_front.rdeque.Rd
rstackdeque/man/insert_back.Rd
rstackdeque/man/as.data.frame.rdeque.Rd
rstackdeque/man/empty.rpqueue.Rd
rstackdeque/man/head.rpqueue.Rd
rstackdeque/man/without_front.rpqueue.Rd
rstackdeque/man/peek_front-set-.rpqueue.Rd
rstackdeque/man/empty.rdeque.Rd
rstackdeque/man/peek_top-set-.rstack.Rd
rstackdeque/man/peek_front.rdeque.Rd
rstackdeque/man/without_front.Rd
rstackdeque/man/without_top.rstack.Rd
rstackdeque/man/print.rdeque.Rd
rstackdeque/man/rev.rstack.Rd
rstackdeque/man/as.data.frame.rpqueue.Rd
rstackdeque/man/peek_back.Rd
rstackdeque/man/peek_back-set.Rd
rstackdeque/man/fixd.rdeque.Rd
rstackdeque/man/without_top.Rd
rstackdeque/man/as.list.rstack.Rd
rstackdeque/man/peek_front.Rd
rstackdeque/man/rotate.Rd
rstackdeque/man/as.rpqueue.Rd
rstackdeque/man/peek_top.rstack.Rd
rstackdeque/man/insert_top.Rd
rstackdeque/man/print.rpqueue.Rd
rstackdeque/man/as.rdeque.Rd
rstackdeque/man/empty.Rd
rstackdeque/man/peek_back-set-.rdeque.Rd
rstackdeque/man/empty.rstack.Rd
rstackdeque/man/rotate.rpqueue.Rd
rstackdeque/man/length.rdeque.Rd
rstackdeque/man/rstacknode.Rd
rstackdeque/man/as.rstack.default.Rd
rstackdeque/man/as.rdeque.default.Rd
rstackdeque/man/fixd.Rd
rstackdeque/man/as.rpqueue.default.Rd
rstackdeque/man/rdeque.Rd
rstackdeque/man/as.rstack.Rd
rstackdeque/man/rpqueue.Rd
rstackdeque/man/as.data.frame.rstack.Rd
rstackdeque/man/peek_front-set.Rd
rstackdeque/man/makeequal.rpqueue.Rd
rstackdeque/man/insert_back.rpqueue.Rd
rstackdeque/man/without_back.Rd
rstackdeque/man/head.rstack.Rd
rstackdeque/man/peek_front-set-.rdeque.Rd
rstackdeque/man/length.rstack.Rd
rstackdeque/man/head.rdeque.Rd
rstackdeque/man/peek_top-set.Rd
rstackdeque/man/as.list.rpqueue.Rd
rstackdeque/man/insert_front.rdeque.Rd
rstackdeque/man/length.rpqueue.Rd
rstackdeque/man/print.rstack.Rd
rstackdeque/man/without_back.rdeque.Rd
rstackdeque/man/makeequal.Rd
rstackdeque/man/peek_back.rdeque.Rd
rstackdeque/man/peek_front.rpqueue.Rd
rstackdeque/man/insert_front.Rd
rstackdeque/man/rstack.Rd
rstackdeque/man/peek_top.Rd
rstackdeque/LICENSE