Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
28
Task/Binary-search/Lambdatalk/binary-search.lambdatalk
Normal file
28
Task/Binary-search/Lambdatalk/binary-search.lambdatalk
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
{def BS
|
||||
{def BS.r {lambda {:a :v :i0 :i1}
|
||||
{let { {:a :a} {:v :v} {:i0 :i0} {:i1 :i1}
|
||||
{:m {floor {* {+ :i0 :i1} 0.5}}} }
|
||||
{if {< :i1 :i0}
|
||||
then :v is not found
|
||||
else {if {> {array.item :a :m} :v}
|
||||
then {BS.r :a :v :i0 {- :m 1} }
|
||||
else {if {< {array.item :a :m} :v}
|
||||
then {BS.r :a :v {+ :m 1} :i1 }
|
||||
else :v is at array[:m] }}}}} }
|
||||
{lambda {:a :v}
|
||||
{BS.r :a :v 0 {- {array.length :a} 1}} }}
|
||||
-> BS
|
||||
|
||||
{def A {array 12 14 16 18 20 22 25 27 30}}
|
||||
-> A = [12,14,16,18,20,22,25,27,30]
|
||||
|
||||
{BS {A} -1} -> -1 is not found
|
||||
{BS {A} 24} -> 24 is not found
|
||||
{BS {A} 25} -> 25 is at array[6]
|
||||
{BS {A} 123} -> 123 is not found
|
||||
|
||||
{def B {array {serie 1 100000 2}}}
|
||||
-> B = [1,3,5,... 99997,99999]
|
||||
|
||||
{BS {B} 100} -> 100 is not found
|
||||
{BS {B} 12345} -> 12345 is at array[6172]
|
||||
Loading…
Add table
Add a link
Reference in a new issue