From dc7732b6f073d5450657d94c815ca445a1a08fbd Mon Sep 17 00:00:00 2001 From: thing1 Date: Tue, 24 Sep 2024 15:28:45 +0100 Subject: fixed some demos --- comp/work/35/binaryseach | Bin 0 -> 15456 bytes comp/work/35/binaryseach.c | 44 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100755 comp/work/35/binaryseach create mode 100644 comp/work/35/binaryseach.c (limited to 'comp/work/35') diff --git a/comp/work/35/binaryseach b/comp/work/35/binaryseach new file mode 100755 index 0000000..1794f4f Binary files /dev/null and b/comp/work/35/binaryseach differ diff --git a/comp/work/35/binaryseach.c b/comp/work/35/binaryseach.c new file mode 100644 index 0000000..e6ce234 --- /dev/null +++ b/comp/work/35/binaryseach.c @@ -0,0 +1,44 @@ +#include +#include +#include +#include + +char *arr[] = { + "ali", + "ben", + "carl", + "joe", + "ken", + "lara", + "mo", + "oli", + "pam", + "stan", + "tara" +}; +int len = 11; + +char *binsearch(char *tofind){ + int l = len/2; + char *start = arr[0]; + char *end = arr[len]; + char *mid = arr[l]; + + while (mid != tofind){ + if (strcmp(mid, tofind) < 0){ + start = mid; + l /= 2; + mid = arr[len - l]; + }else { + end = mid; + l /= 2; + mid = arr[len - l] + } + } + + return start; +} + +int main(){ + binsearch("pam"); +} -- cgit v1.2.3