File: sort.asy

package info (click to toggle)
asymptote 2.02-2
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 9,720 kB
  • ctags: 9,807
  • sloc: cpp: 54,858; python: 3,590; ansic: 2,371; perl: 1,555; lisp: 1,363; yacc: 545; sh: 523; makefile: 503; lex: 434
file content (39 lines) | stat: -rw-r--r-- 746 bytes parent folder | download | duplicates (11)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import TestLib;
import math;

string[] a={"bob","alice","pete","alice"};
string[] b={"alice","alice","bob","pete"};

StartTest("sort");

assert(all(sort(a) == b));

EndTest();

StartTest("search");

assert(search(b,"a") == -1);
assert(search(b,"bob") == 2);
assert(search(b,"z") == b.length-1);

EndTest();

StartTest("sort2");

string[][] a={{"bob","9"},{"alice","5"},{"pete","7"},{"alice","4"}};
string[][] b={{"alice","4"},{"alice","5"},{"bob","9"},{"pete","7"}};

assert(sort(a) == b);

EndTest();

pair[] a={(2,1),(0,0),(1,1),(1,0)};
pair[] b={(0,0),(1,0),(1,1),(2,1)};

StartTest("lexicographical sort");
assert(all(sort(a,lexorder) == b));
EndTest();

StartTest("lexicographical search");
assert(search(b,(1,0),lexorder) == 1);
EndTest();