skipDelete(3) util/skiplist.h skipDelete(3)NAME
skipDelete - delete an item.
SYNOPSIS
#include <util/skiplist.h>
void skipDelete(skipList list, UINT32 key);
ARGUMENTS
list - list to delete item from.
key - key identifying value to delete.
DESCRIPTION
Delete the item associated with <key> from <list>.
MT-Level: Safe if <list> thread-safe.
RETURN VALUE
None.
SEE ALSO skipDelete(3), skipFreeList(3), skipRelease(3), skipInsert(3), skipSearch(3), skipNext(3), skipNewList
ClearSilver 12 July 2007 skipDelete(3)
Check Out this Related Man Page
struct::skiplist(n) Tcl Data Structures struct::skiplist(n)
__________________________________________________________________________________________________________________________________________________NAME
struct::skiplist - Create and manipulate skiplists
SYNOPSIS
package require Tcl 8.2
package require struct::skiplist ?1.3?
skiplistName option ?arg arg ...?
skiplistName delete node ?node...?
skiplistName destroy
skiplistName insert key value
skiplistName search node ?-key key?
skiplistName size
skiplistName walk cmd
_________________________________________________________________DESCRIPTION
The ::struct::skiplist command creates a new skiplist object with an associated global Tcl command whose name is skiplistName. This command
may be used to invoke various operations on the skiplist. It has the following general form:
skiplistName option ?arg arg ...?
Option and the args determine the exact behavior of the command.
Skip lists are an alternative data structure to binary trees. They can be used to maintain ordered lists over any sequence of insertions
and deletions. Skip lists use randomness to achieve probabilistic balancing, and as a result the algorithms for insertion and deletion in
skip lists are much simpler and faster than those for binary trees.
To read more about skip lists see Pugh, William. Skip lists: a probabilistic alternative to balanced trees In: Communications of the ACM,
June 1990, 33(6) 668-676.
Currently, the key can be either a number or a string, and comparisons are performed with the built in greater than operator. The follow-
ing commands are possible for skiplist objects:
skiplistName delete node ?node...?
Remove the specified nodes from the skiplist.
skiplistName destroy
Destroy the skiplist, including its storage space and associated command.
skiplistName insert key value
Insert a node with the given key and value into the skiplist. If a node with that key already exists, then the that node's value is
updated and its node level is returned. Otherwise a new node is created and 0 is returned.
skiplistName search node ?-key key?
Search for a given key in a skiplist. If not found then 0 is returned. If found, then a two element list of 1 followed by the
node's value is retuned.
skiplistName size
Return a count of the number of nodes in the skiplist.
skiplistName walk cmd
Walk the skiplist from the first node to the last. At each node, the command cmd will be evaluated with the key and value of the
current node appended.
BUGS, IDEAS, FEEDBACK
This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category struct
:: skiplist of the Tcllib SF Trackers [http://sourceforge.net/tracker/?group_id=12883]. Please also report any ideas for enhancements you
may have for either package and/or documentation.
KEYWORDS
skiplist
CATEGORY
Data structures
COPYRIGHT
Copyright (c) 2000 Keith Vetter
struct 1.3 struct::skiplist(n)