diff options
| author | gingerBill <bill@gingerbill.org> | 2020-05-23 13:57:24 +0100 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2020-05-23 13:57:24 +0100 |
| commit | 7d11ee605cc63aa9348524a4bc9ddee6af440791 (patch) | |
| tree | 544dcddaad1cb1611fb9292ba3a6a610d682af4c /examples | |
| parent | 4671207c61c868b4ed1297c3dca8d7a8bd0ba820 (diff) | |
Add `sort.binary_search` (uses interpolation sort for ordered numeric types)
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/demo/demo.odin | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/examples/demo/demo.odin b/examples/demo/demo.odin index f908e6ecd..28b453d06 100644 --- a/examples/demo/demo.odin +++ b/examples/demo/demo.odin @@ -7,6 +7,7 @@ import "core:thread" import "core:time" import "core:reflect" import "core:runtime" +import "core:sort" import "intrinsics" @@ -1978,7 +1979,19 @@ pure_procedures :: proc() { } main :: proc() { - when true { + x := [?]f32{1, 1, 5, 6, 7, 8, 9, 10, 15, 15}; + i, ok := sort.binary_search(x[:], 7); + fmt.println(x); + fmt.println(i, ok); + + y := [?]string{"apple", "hello", "goodbye", "what?"}; + sort.quick_sort(y[:]); + j, y_ok := sort.binary_search(y[:], "goodbye"); + fmt.println(y); + fmt.println(j, y_ok); + + + when false { the_basics(); control_flow(); named_proc_return_parameters(); |