Esempio n. 1
0
        // Аналогично методу AddSuffixesRightToLeft, но распространяет вправо.
        public void AddSuffixesLeftToRight(SubPointer p, int minSubstrLength, List<SuffixSubstr> list)
        {
            var i = p.Left + 1;
            var lastLen = p.Length;
            var len = Math.Min(lastLen, _lcptab[i]);

            while (len >= minSubstrLength)
            {
                list.Add(new SuffixSubstr(_suftab[i], p.SrcId, len));
                i++;
                lastLen = len;
                len = Math.Min(lastLen, _lcptab[i]);
            }
        }
Esempio n. 2
0
 public SuffixSubstr CreateSuffixSrc(SubPointer p)
 {
     return new SuffixSubstr(p.SrcId, _suftab[p.Left], p.Length);
 }