What does it mean to be efficient? Our ultimate answer will be
that an algorithm is efficient if its worst-case running time on
input size nnn is O(nd)O(n^d)O(nd) for some constant ddd. But it will
take us several steps to build up to that definition.