Skip to content

Commit ccc0055

Browse files
authored
Merge pull request #383 from StefanLobbenmeier/main
35 - Add faster hashtable implementation
2 parents ec5e01e + 137aaed commit ccc0055

File tree

3 files changed

+45
-0
lines changed

3 files changed

+45
-0
lines changed

contributors.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -311,5 +311,9 @@
311311
},
312312
{
313313
"username": "halchihal"
314+
},
315+
{
316+
"username": "StefanLobbenmeier",
317+
"fullName": "Stefan Lobbenmeier"
314318
}
315319
]
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
-- HUMAN RESOURCE MACHINE PROGRAM --
2+
-- 35-Duplicate-Removal - SIZE 27/17 - SPEED 95/167 --
3+
4+
-- This solution is level-specific. It relies on a hashtable of size nine.
5+
-- Every letter is positioned at [charcode of first letter] - [charcode of current letter]
6+
-- It assumes that no vowel has a distance to the first vowel of more than 4,
7+
-- for example first letter E and some letter A, or first letter A and some letter is E
8+
9+
COPYFROM 14
10+
COPYTO 0
11+
COPYTO 1
12+
COPYTO 2
13+
COPYTO 3
14+
COPYTO 5
15+
COPYTO 6
16+
COPYTO 7
17+
COPYTO 8
18+
BUMPUP 14
19+
BUMPUP 14
20+
BUMPUP 14
21+
BUMPUP 14
22+
INBOX
23+
COPYTO [14]
24+
JUMP b
25+
a:
26+
COPYFROM 12
27+
COPYFROM [13]
28+
b:
29+
OUTBOX
30+
c:
31+
INBOX
32+
COPYTO 12
33+
SUB [14]
34+
ADD 14
35+
COPYTO 13
36+
COPYFROM [13]
37+
JUMPZ a
38+
JUMP c

solutions/35-Duplicate-Removal-17.167/27.96.hashtable-ironwallaby.asm.skip renamed to solutions/35-Duplicate-Removal-17.167/27.96.obsolete-ironwallaby.asm.skip

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
-- HUMAN RESOURCE MACHINE PROGRAM --
22

3+
-- This solution is superseded by 27.95.specific-StefanLobbenmeier.asm being functionally same
4+
-- with further optimization.
5+
36
COPYFROM 14
47
COPYTO 0
58
COPYTO 1

0 commit comments

Comments
 (0)