This book is intended to be a teaching aid for students of the courses in Operations Research and Mathematical Optimization for scientific faculties. Some of the basic topics of Operations Research and Optimization are considered: Linear Programming, Integer Linear Programming, Computational Complexity, and Graph Theory. Particular emphasis is given to Integer Linear Programming, with an exposition of the most recent resolution techniques, and in particular of the branch-and-cut method. The work is accompanied by numerous examples and exercises.