Results 11  20
of
24
Algorithms for Transposition Invariant String Matching (Extended Abstract)
 Journal of Algorithms
, 2002
"... Given strings A and B over an alphabet Σ ⊆ U, where U is some numerical universe closed... ..."
Abstract

Cited by 9 (6 self)
 Add to MetaCart
Given strings A and B over an alphabet &Sigma; &sube; U, where U is some numerical universe closed...
TWOWAY CHAINING WITH REASSIGNMENT
"... Abstract. We present an algorithm for hashing ⌊ αn ⌋ elements into a table with n separate chains that requires O(1) deterministic worstcase insert time, and O(1) expected worstcase search time for constant α. We exploit the connection between twoway chaining and random graph theory in our techni ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
(Show Context)
Abstract. We present an algorithm for hashing ⌊ αn ⌋ elements into a table with n separate chains that requires O(1) deterministic worstcase insert time, and O(1) expected worstcase search time for constant α. We exploit the connection between twoway chaining and random graph theory in our techniques.
Improved Multiunit Auction Clearing Algorithms with Interval (MultipleChoice) Knapsack Problems
"... Abstract. We study the interval knapsack problem (IKP), and the interval multiplechoice knapsack problem (IMCKP), as generalizations of the classic 0/1 knapsack problem (KP) and the multiplechoice knapsack problem (MCKP), respectively. Compared to singleton items in KP and MCKP, each item i in I ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
Abstract. We study the interval knapsack problem (IKP), and the interval multiplechoice knapsack problem (IMCKP), as generalizations of the classic 0/1 knapsack problem (KP) and the multiplechoice knapsack problem (MCKP), respectively. Compared to singleton items in KP and MCKP, each item i in IKP and IMCKP is represented by a ([ai, bi], pi) pair, where integer interval [ai, bi] specifies the possible range of units, and pi is the unitprice. Our main results are a FPTAS for IKP with time O(nlog n + n/ǫ 2) and a FPTAS for IMCKP with time O(nm/ǫ), and pseudopolynomialtime algorithms for both IKP and IMCKP with time O(nM) and space O(n + M). Here n, m, and M denote number of items, number of item sets, and knapsack capacity respectively. We also present a 2approximation of IKP and a 3approximation of IMCKP both in linear time. We apply IKP and IMCKP to the singlegood multiunit sealedbid auction clearing problem where M identical units of a single good are auctioned. We focus on two bidding models, among them the interval model allows each bid to specify an interval range of units, and XORinterval model allows a bidder to specify a set of mutually exclusive interval bids. The interval and XORinterval bidding models correspond to IKP and IMCKP respectively, thus are solved accordingly. We also show how to compute VCG payments to all the bidders with an overhead of O(log n) factor. Our results for XORinterval bidding model imply improved algorithms for the piecewise constant bidding model studied by Kothari et al. [18], improving their algorithms by a factor of Ω(n). 1
Simple Confluently Persistent Catenable Lists.
, 1999
"... Abstract We consider the problem of maintaining persistent lists subject to concatenation and to insertions and deletions at both ends. Updates to a persistent data structure are nondestructive each operation produces a new list incorporating the change, while keeping intact the list or lists to wh ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract We consider the problem of maintaining persistent lists subject to concatenation and to insertions and deletions at both ends. Updates to a persistent data structure are nondestructive each operation produces a new list incorporating the change, while keeping intact the list or lists to which it applies. Although general techniques exist for making data structures persistent, these techniques fail for structures that are subject to operations, such as catenation, that combine two or more versions. In this paper we develop a simple implementation of persistent doubleended queues with catenation that supports all deque operations in constant amortized time. Our implementation is functional if we allow memoization.
Worst Case Efficient Data Structures for Priority Queues and Deques with Heap Order
"... An efficient amortized data structure is one that ensures that the average time per operation spent on processing any sequence of operations is small. Amortized data structures typically have very nonuniform response times, i.e., individual operations can be occasionally and unpredictably slow, alt ..."
Abstract
 Add to MetaCart
An efficient amortized data structure is one that ensures that the average time per operation spent on processing any sequence of operations is small. Amortized data structures typically have very nonuniform response times, i.e., individual operations can be occasionally and unpredictably slow, although the average time over a sequence is kept small by completing most of the other operations quickly. This makes amortized data structures unsuitable in many important contexts, such as real time systems, parallel programs, persistent data structures and interactive software. On the other hand, an efficient worst case data structure guarantees that every operation will be performed quickly.
( δγ,)occurrencewithα
"... certain criteria. In [2], algorithmic solutions for eight versions of approximate string ma tching with gaps were presented. These problems are listed bellow: δoccurrencewithαbounded gaps ..."
Abstract
 Add to MetaCart
(Show Context)
certain criteria. In [2], algorithmic solutions for eight versions of approximate string ma tching with gaps were presented. These problems are listed bellow: δoccurrencewithαbounded gaps
Sequence Implementations in Haskell
, 1997
"... An abstract data type sequence is defined with the operations empty, isEmpty, cons, snoc, popFront, popRear, lenghtSeq, toList, and toSeq. A sequence with the operations lookupSeq and updateSeq is an Indexable Sequence. A sequence with catenation is called a Catenable Sequence. Some functional imp ..."
Abstract
 Add to MetaCart
(Show Context)
An abstract data type sequence is defined with the operations empty, isEmpty, cons, snoc, popFront, popRear, lenghtSeq, toList, and toSeq. A sequence with the operations lookupSeq and updateSeq is an Indexable Sequence. A sequence with catenation is called a Catenable Sequence. Some functional implementations of these abstract data types taken from the literature are described. These implementations are classified as stacks, deques, flexible arrays, and catenable lists, if they can be used as efficient implementations for each of these traditional data types. Some of them are extended to provide the operations defined for sequences. Some comments and directions for further research are also included. The implementations are made in the functional programming language Haskell as instances of one or more of the classes Sequence, IndSeq, and CatSeq, with the operations defined for each type. These instances are classified by the subset of these operations that each instance supports eff...
Approximate Matching of RunLength Compressed Strings\Lambda
"... 1 1 Introduction The problem of compressed pattern matching is, given a compressed text T and a (possibly compressed) pattern P, to find all occurrences of P in T without decompressing T (and P). The goal is to search faster than by using the basic scheme: decompression followed by a search. ..."
Abstract
 Add to MetaCart
(Show Context)
1 1 Introduction The problem of compressed pattern matching is, given a compressed text T and a (possibly compressed) pattern P, to find all occurrences of P in T without decompressing T (and P). The goal is to search faster than by using the basic scheme: decompression followed by a search.
O(1) Concatenation of Deques With Heap Order
, 1995
"... We present a data structure to implement deques with heap order that supports the operations find minimum, push, pop, inject, eject and concatenate two deques, each in O(1) time. ..."
Abstract
 Add to MetaCart
(Show Context)
We present a data structure to implement deques with heap order that supports the operations find minimum, push, pop, inject, eject and concatenate two deques, each in O(1) time.