aboutsummaryrefslogtreecommitdiff
path: root/ass2/ukkonen.py
diff options
context:
space:
mode:
Diffstat (limited to 'ass2/ukkonen.py')
-rw-r--r--ass2/ukkonen.py16
1 files changed, 9 insertions, 7 deletions
diff --git a/ass2/ukkonen.py b/ass2/ukkonen.py
index b4b0b98..bc8b563 100644
--- a/ass2/ukkonen.py
+++ b/ass2/ukkonen.py
@@ -1,10 +1,11 @@
import sys
+ALPHABET_SIZE = 28
class OrderedDict(dict):
def __init__(self):
super().__init__()
- self.first_letters = [None for _ in range(27)]
+ self.first_letters = [None for _ in range(ALPHABET_SIZE)]
def __setitem__(self, key, value):
super().__setitem__(key, value)
@@ -22,10 +23,13 @@ class OrderedDict(dict):
@staticmethod
def rank(char):
- # result = 26 if char == "$" else ord(char) - 97
- result = 0 if char == "$" else ord(char) - 96
- assert result in range(0, 27)
- return result
+ if char == "$":
+ return 26
+ elif char == "&":
+ return 27
+ else:
+ return ord(char) - 96
+
class Node:
@@ -118,8 +122,6 @@ class Point:
self.node = node
self.edge = ""
self.length = 0
- if not self.is_explicit():
- print("WARNING: Node.set_node", file=sys.stderr)
@property
def edge_node(self) -> Node: