Subject: RE: How the other half live
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Tue, 18 Nov 2008 15:21:43 -0000
|
> for $d in distinct-values($seq) return $d[count($seq[. eq $d]) ge $i]
>
> equivalent? I think it is, and probably a lot more
> efficient, although it is longer.
>
They are both O(n^2).
What about:
<xsl:for-each-group select="$seq" group-by=".">
<xsl:sequence select="current-group()[$i]"/.
</xsl:for-each-group>
which also scores quite well on brevity, I think - in syntax tree form, it
has 6 nodes which is the same as Dimitre's expression; and I think it rates
higher on both efficiency and clarity.
Michael Kay
http://www.saxonica.com/
|