Skip to content

Repository files navigation

php-linkedlist

Build Status

A speedy LinkedList and DoubleLinkedList data structure implementation in PHP.

Installation

composer require blister/linkedlist

Usage

$list = newBlister\LinkedList();
// Add to the end of the LinkedList$list->push('Hello!');
$list->push('World!');
$list->push(array('key' => 'val'));
$list->push(true);
$list->push('Last!');
// Add to the front of the LinkedList$list->unshift('New First!');
// Get the length of the LinkedList$len = $list->length; // 6// Searching inside the list$found_index = $list->index('World!'); // 2$found = $list->find('World'); // true$found = $list->find('Missing'); // false// removing elements$last = $list->pop(); // 'Last!' $first = $list->shift(); // 'First!'$middle = $list->remove('World!'); // 'World!'$third = $list->removeAt(1); // array('key' => 'val')

Tests

This LinkedList implementation comes with a full suite of PHPUnit tests.

composer run-script test

Future

  • toArray():array
  • findAll(mixed $needle):array
  • fill(int $count, mixed $value):bool
  • findFromTail(mixed $needle):mixed
  • indexFromTail(mixed $needle):int
  • print():void

Author

Eric Ryan Harrison, @blister

About

A speedy LinkedList and DoubleLinkedList data structure implementation in PHP.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages