(3 Lec, 1 3-hr. Lab) Reinforce and strengthen problemsolving skills using abstract data types and introduce software development practices. Emphasize the use of searching and sorting algorithms and their complexity, recursion, object-oriented programming, and data structures. Pre: 111 or consent.