Practice midterms from the previous years:
Fall 2014 midterm (Blanchette) and ITS SOLUTION
Fall 2013 midterm and ITS SOLUTION
Midterm 2 from Winter 2013 (Blanchette) and ITS SOLUTION.
Fall 2004 midterm (Blanchette) and ITS SOLUTION
Winter 2003 midterm (Arboit).


Final exams from previous years:
Fall 2015 (mutliple choice, with solutions)
Winter 2013 (Blanchette) and ITS SOLUTION
Fall 2012 (Langer)
Fall 2005 (Blanchette)
Fall 2003 (Blanchette)

Here are some problems from some books that you may use as practice:
Big-Oh notation and analysis of running times: Chapter 1, with exercises of Section 1.7 of "Algorithm Design: Foundations, Analysis, and internet examples", Goodrich and Tamassia
Recursive algorithms and their analysis: Section 5.2 of the same book.