The major difference is in the location of that part of the algorithm that is fixed, and that part of the algorithm that differs. In the strategy pattern, the variable part of the algorithm is supplied by passing an algorithm object to the class that carries out a computation.
In the template method pattern, the variable part of the algorithm is supplied in virtual functions of a class that derives from the class that carries out the algorithm.