The course covers several fields in algebra, with special emphasis on how to efficiently solve different problems. In the first part of the course, we study how multiplication of numbers and polynomials can be conducted in a faster way than the usual method. Furthermore, more efficient methods for multiplying matrices are treated. After these initial steps, we go on to studying polynomials, where we investigate how to factorize a polynomial effectively and find roots to it. In the last part of the course we investigate how to find short vectors of integers, when there are conditions on those integers, and how this is related to the theory of polynomials.