Tuesday, 5 November 2013

SLOG #5: Assignment numero 2 and Sorting

Today's SLOG will include updates as I progress through assignment 2. I acknowledge it would've been way better to finish it before now, and I have thought about it a lot, but now we've arrived at due date, and it's crunch time.

But first, since procrastinating is usually one of the things I'm better at, some quick words about sorting, which was the topic this week. I have worked with sorting before, but it's mostly in fuzzy memories of the computer science course I took in eleventh grade, and I distinctly remember using "bubble sorts", even though I can't remember how a bubble sort works. So far, the material this week has made sense and has seemed somewhat familiar, however, I don't think I ever used recursion to implement a quicksort, and the run time thing is new-yet-not-new to me, which has a bit of an interesting story behind it. Two Fridays ago, I had the opportunity to go to the Waterloo Google offices, and during the visit, we got split into small groups for mock interviews. I was with mostly 3rd and 4th years from uWaterloo, and the engineer from google posed us a simple programming question that he made increasingly complex everytime we came up with a solution (after the first revision, I just stopped contributing).

At some point, he asked us about the different run times of the algorithms we had and sstarted talking about "big O-s" and I had no clue what was going on. The week after that, it came up in my CSC165 class as we progressed into the algorithms chapter of the course, and finally, this week, it all sort of got tied together, so it's kind of nice how that worked out.

Tomorrow will also be the last class before our next test, which I admit I'm a little nervous for, in case I need to make up for abysmal performance on A2. Luckily, the fall break will ensure I have ample time to mentally prepare myself.

Now, I will endeavor into the world of trying to desperately finish assignment two (interrupted by brief breaks for a) attending the tutorial for this class and b) attending 165). I have become the sort of person who likes to work on my wall, so here's a nice picture of what I've been looking at for a few days:


UPDATE: 11:21PM

Okay, I know I said "updates", plural, but here's the only update on the assignment: I'M DONE. I think. Kind of. I'm like, 80% confident it works. I couldn't make updates (plural) because I was too busy actually doing the thing, imagine that.

The amount of stress this assignment caused me is proportional the the number of empty coffee cups from Rezkinoff around my room (5). What have we learned from this assignment? Well...
Remember when Danny said at the beginning of the semester that his goal was to make us all love recursion? I scoffed and rolled my eyes and silently protested such a repulsive idea.

I was wrong. So very wrong.

I love recursion.