From 1fec40454ef72c6e2f079b599e9c807ce69a4bec Mon Sep 17 00:00:00 2001 From: Jay Berkenbilt Date: Sat, 30 Jan 2021 07:34:08 -0500 Subject: Add example of name/number trees and dictionary/array iteration --- examples/qtest/name-number-tree/nn.out | 59 +++++++++++ examples/qtest/name-number-tree/out.pdf | 179 ++++++++++++++++++++++++++++++++ 2 files changed, 238 insertions(+) create mode 100644 examples/qtest/name-number-tree/nn.out create mode 100644 examples/qtest/name-number-tree/out.pdf (limited to 'examples/qtest/name-number-tree') diff --git a/examples/qtest/name-number-tree/nn.out b/examples/qtest/name-number-tree/nn.out new file mode 100644 index 00000000..d1093462 --- /dev/null +++ b/examples/qtest/name-number-tree/nn.out @@ -0,0 +1,59 @@ +just inserted P -> (pawn) +predecessor: N -> (knight) +successor: Q -> (queen) +Name tree items: + B -> (bishop) + K -> (king) + N -> (knight) + P -> (pawn) + Q -> (queen) + R -> (rook) +Keys in name tree object: +/Names +Values in names: + (B) + (bishop) + (K) + (king) + (N) + (knight) + (P) + (pawn) + (Q) + (queen) + (R) + (rook) +Has Q?: 1 +Has W?: 0 +Found W?: 0 +Found Q?: 1 +Q: (queen) +Q: Q -> (queen) +W found: 0 +W's predecessor: R -> (rook) +Remove P: 1 +Value removed: (pawn) +Has P?: 0 +Find K: (king) +Iter after removing K: N -> (knight) +Has K?: 0 +Numbers: +7 -> -7-, 14 -> -14-, 21 -> -21-, 28 -> -28-, 35 -> -35- +42 -> -42-, 49 -> -49-, 56 -> -56-, 63 -> -63-, 70 -> -70- +77 -> -77-, 84 -> -84-, 91 -> -91-, 98 -> -98-, 105 -> -105- +112 -> -112-, 119 -> -119-, 126 -> -126-, 133 -> -133-, 140 -> -140- +147 -> -147-, 154 -> -154-, 161 -> -161-, 168 -> -168-, 175 -> -175- +182 -> -182-, 189 -> -189-, 196 -> -196-, 203 -> -203-, 210 -> -210- +217 -> -217-, 224 -> -224-, 231 -> -231-, 238 -> -238-, 245 -> -245- +252 -> -252-, 259 -> -259-, 266 -> -266-, 273 -> -273-, 280 -> -280- +287 -> -287-, 294 -> -294-, 301 -> -301-, 308 -> -308-, 315 -> -315- +322 -> -322-, 329 -> -329-, 336 -> -336-, 343 -> -343-, 350 -> -350- +Numbers after filtering: +7 -> -7-, 14 -> -14-, 21 -> -21-, 28 -> -28-, 42 -> -42- +49 -> -49-, 56 -> -56-, 63 -> -63-, 77 -> -77-, 84 -> -84- +91 -> -91-, 98 -> -98-, 112 -> -112-, 119 -> -119-, 126 -> -126- +133 -> -133-, 147 -> -147-, 154 -> -154-, 161 -> -161-, 168 -> -168- +182 -> -182-, 189 -> -189-, 196 -> -196-, 203 -> -203-, 217 -> -217- +224 -> -224-, 231 -> -231-, 238 -> -238-, 252 -> -252-, 259 -> -259- +266 -> -266-, 273 -> -273-, 287 -> -287-, 294 -> -294-, 301 -> -301- +308 -> -308-, 322 -> -322-, 329 -> -329-, 336 -> -336-, 343 -> -343- diff --git a/examples/qtest/name-number-tree/out.pdf b/examples/qtest/name-number-tree/out.pdf new file mode 100644 index 00000000..69496619 --- /dev/null +++ b/examples/qtest/name-number-tree/out.pdf @@ -0,0 +1,179 @@ +%PDF-1.3 +%¿÷¢þ +%QDF-1.0 + +%% Original object ID: 1 0 +1 0 obj +<< + /Example << + /NameTree << + /Names [ + (B) + (bishop) + (N) + (knight) + (Q) + (queen) + (R) + (rook) + ] + >> + /NumberTree << + /Kids [ + 2 0 R + 3 0 R + 4 0 R + ] + /Limits [ + 7 + 343 + ] + >> + >> + /Pages 5 0 R + /Type /Catalog +>> +endobj + +%% Original object ID: 3 0 +2 0 obj +<< + /Limits [ + 7 + 112 + ] + /Nums [ + 7 + (-7-) + 14 + (-14-) + 21 + (-21-) + 28 + (-28-) + 42 + (-42-) + 49 + (-49-) + 56 + (-56-) + 63 + (-63-) + 77 + (-77-) + 84 + (-84-) + 91 + (-91-) + 98 + (-98-) + 112 + (-112-) + ] +>> +endobj + +%% Original object ID: 4 0 +3 0 obj +<< + /Limits [ + 119 + 224 + ] + /Nums [ + 119 + (-119-) + 126 + (-126-) + 133 + (-133-) + 147 + (-147-) + 154 + (-154-) + 161 + (-161-) + 168 + (-168-) + 182 + (-182-) + 189 + (-189-) + 196 + (-196-) + 203 + (-203-) + 217 + (-217-) + 224 + (-224-) + ] +>> +endobj + +%% Original object ID: 5 0 +4 0 obj +<< + /Limits [ + 231 + 343 + ] + /Nums [ + 231 + (-231-) + 238 + (-238-) + 252 + (-252-) + 259 + (-259-) + 266 + (-266-) + 273 + (-273-) + 287 + (-287-) + 294 + (-294-) + 301 + (-301-) + 308 + (-308-) + 322 + (-322-) + 329 + (-329-) + 336 + (-336-) + 343 + (-343-) + ] +>> +endobj + +%% Original object ID: 2 0 +5 0 obj +<< + /Count 0 + /Kids [ + ] + /Type /Pages +>> +endobj + +xref +0 6 +0000000000 65535 f +0000000052 00000 n +0000000448 00000 n +0000000775 00000 n +0000001130 00000 n +0000001505 00000 n +trailer << + /Root 1 0 R + /Size 6 + /ID [<31415926535897932384626433832795><31415926535897932384626433832795>] +>> +startxref +1567 +%%EOF -- cgit v1.2.3-54-g00ecf