Better start with Simon's algorithm (solving Simon's problem) [0]; it already contains a lot of ideas that you need to understand Shor's algorithm, while not having a lot of technicalities. Then progress to Shor's algorithm, and then to Kitaev's algorithm [1] (link from [2]). The latter solves the Abelian stabilizer problem - this problem contains the more abstract mathematical essence of a lot of quantum algorithms.