summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-haskell/lcs/metadata.xml')
-rw-r--r--dev-haskell/lcs/metadata.xml24
1 files changed, 24 insertions, 0 deletions
diff --git a/dev-haskell/lcs/metadata.xml b/dev-haskell/lcs/metadata.xml
new file mode 100644
index 000000000000..fa121ce23df5
--- /dev/null
+++ b/dev-haskell/lcs/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>haskell</herd>
+ <longdescription>
+ Provides a function lcs that takes two lists and returns a longest
+ common sublist. For example, lcs &quot;abcd&quot; &quot;acbd&quot; is either &quot;abd&quot; or
+ &quot;acd&quot;.
+
+ The package provides a simple, stupid and (most of all) slow
+ implementation that needs, for inputs of length m and n, O(m+n)
+ space and O((m+n)!) time in the worst case.
+
+ It also provides an implementation of the Hunt-Szymanski LCS
+ algorithm, based on that in &quot;String searching algorithms&quot; by
+ Graham A Stephen, ISBN 981021829X.
+
+ Given inputs xs and ys of length m and n respectively, where there
+ are r pairs (x, y) where x is in xs, y is in ys and x == y,
+ Hunt-Szymanski needs O(r+m+n) space and O((r+m+n)*log(m+n)) time.
+ Thus this is O((m+n)^2) space and O((m+n)^2*log(m+n)) time in the
+ worst case.
+ </longdescription>
+</pkgmetadata>