From 6aa02212cd6dfbb492fa1f70b60a4fe3d48892e5 Mon Sep 17 00:00:00 2001 From: mjf Date: Tue, 4 Feb 2020 12:11:30 -0500 Subject: cleanup and added more c examples: --- collatz.c | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) (limited to 'collatz.c') diff --git a/collatz.c b/collatz.c index 5bbb783..ec77af6 100644 --- a/collatz.c +++ b/collatz.c @@ -1,19 +1,13 @@ #include #include #include -#include +// In C, it's immediately obvious my python solution is inefficient -// Temporary storage chain -//long int *chain; -// The longest sequence found so far -//long int *seq; - -// Size of the above arrays +// For keeping track of the length of sequences +// c is a temporary counter, s changes when c reaches a new maximum long int c = 0; long int s = 0; long int collatz(long int seed){ - //chain = (long int *) realloc (chain, c * sizeof(long int)); - //chain[c - 1] == seed; c++; if(seed == 1) return 0; @@ -21,19 +15,17 @@ long int collatz(long int seed){ seed = seed / 2; else seed = 3 * seed + 1; - //collatz(seed); + collatz(seed); } int main(){ for(long int i = 1; i < pow(10, 6); i++){ c = 0; - //chain = (long int *) malloc(c * sizeof(long int)); collatz(i); - printf("%d \n", i); if(c > s){ s = c; } } - printf("Has %d numbers \n", s); + printf("The longest sequence has %d numbers \n", s); return 0; } -- cgit v1.2.3