Sitemap

A list of all the posts and pages found on the site. For you robots out there is an XML version available for digesting as well.

Pages

About me

Posts

Breadth-First Search (BFS)

1 minute read

Published:

This post explains the breadth-first search graph traversal algorithm. It is full of interactive examples that I used as part of my lectureship application at Swansea University.

Say we have a maze, and we want to find the shortest route from the entrance to the exit. We can encode that maze as a graph and use BFS to solve it. On the maze below, you can hit play() to see the algorithm explore the maze, shown in green. Notice how it flows through like water; whenever it reaches a fork, it explores all the possible paths simultaneously until it has explored the entire maze.

portfolio

publications

talks

teaching

Electronics Laboratory (Lead GTA)

Undergraduate course, Imperial College London, Electrical and Electronic Engineering Department, 2013

Assisted in the UG electronics laboratory, which involved constructing a PCB for a capacitive touch sensor. Helped students with their design, but also managed other GTAs and organised oral assessments.

Language Processors (Lead GTA)

Undergraduate course, Imperial College London, Electrical and Electronic Engineering Department, 2015

I designed and ran the tutorial sessions for the Language Processors 2nd year Electronic and Information Systems undergraduate course. Running these tutorial sessions involved developing tutorial problems on parsing and code generation, and helping students with the construction of their C ARM compilers using flex & bison. A lot of the problems set in the class revolved around the text-based computer game Zork.

User Centered Information Systems (Co-lecturer)

Undergraduate course, Imperial College London, Electrical and Electronic Engineering Department, 2018

I was honoured to co-lecture a first-year UG course alongside the brilliant Bob Spence in 2017. In this course, I developed lectures on avoiding errors in HCI applications, and on design thinking (following the textbook by Don Norman).