Back to notebook

My first open problem

In the winter of 2026, I started an undergraduate research assistantship (URA) with Prof. Elena Grigorescu (opens in a new tab).

I began thinking about Hierholzer’s algorithm, a classical algorithm for finding Euler tours that I remembered from my Olympiad days. The question was how to keep its linear running time while using much less memory. A solution existed for directed graphs, but the undirected case was still open. Thinking it couldn’t be that hard, I started working on it.

After eight months of pain and tears, I had a solution. That work led to Space-Efficient Hierholzer for Undirected Graphs (opens in a new tab).

The algorithm outputs an Euler tour of an undirected multigraph, if one exists, in O(m) time using O(n) words of working memory, where n is the number of vertices and m the number of edges. You can see how it works here (opens in a new tab).

It all felt impossible until it didn’t. The hardest part was to keep going.