Data structures course using the Java programming language. Basic mathematical, logical, and programming concepts relevant to description and manipulation of information structures such as arrays, lists, trees, graphs, and files; the underlying principles of algorithm design and analysis applied to sorting and searching problems. Prerequisite: grade of C or better in E&C-ENG 122, 201 or equivalent.