File: sort.asy

package info (click to toggle)
luatex 0.70.1.20120524-3
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 242,132 kB
  • sloc: ansic: 890,140; cpp: 469,298; perl: 73,299; sh: 46,668; makefile: 16,604; python: 8,427; lisp: 6,684; xml: 3,926; lex: 3,784; java: 3,569; pascal: 3,569; yacc: 2,461; exp: 2,031; ruby: 1,375; objc: 1,362; tcl: 631; sed: 522; asm: 435; csh: 46; awk: 30
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();