CS 1520 Data Structures

Introduction to use and implementation of data and file structures such as sets, hash tables, stacks, trees, queues, heaps, and graphs. Basic algorithm analysis. Searching and sorting. Basic object-oriented analysis, design, and modeling tools.

Course details

Course syllabus: 
View the course syllabus for more details
Course notes: 

If your equivalent course did not use the Python programming language, it is not a problem. The same introductory programming concepts apply. The textbook (Ch. 1-10) will help you understand the Python syntax. View an overview of essential differences between Python, Java and C++ at his  website and free, online Python tutorials on the Python website

UNI students: CS 1510. Prerequisite(s) or corequisite(s): CS 1800
Bachelor of Liberal Studies (BLS) distribution area: 

Students working toward their Bachelor of Liberal Studies may apply credit earned in this course to their degree. This Guided Independent Study course is applicable to the Natural Sciences and Mathematics distribution area. Learn more about the BLS degree program.


Miller, Bradley N., & Ranum, David L. Problem Solving with Algorithms and Data Structures Using Python (2nd ed.). Franklin, Beedle & Associates. ISBN: 978-1-59028-257-1
Free on-line version of the textbook: http://interactivepython.org/courselib/static/pythonds/index.html

Software Tools: You will need to download and install the free Python development package (latest version 3.x) from the Python website.

Supplemental Videos: Videos from the face-to-face version of the course are available at: http://www.cs.uni.edu/~fienup/DataStructuresVideoLinks.html

UNI Bookstore carries most books used in GIS courses. Search for textbooks by course choosing “UNIV.NORTHERNIOWA” and the term you are enrolled in and GSW (web) or GSP (print) for the section.

Visit UBS at 1009 West 23rd Street, Cedar Falls, IA 50613
Phone: 319-273-2665
Email: bookstore@uni.edu

Texts may also be available from www.bookfinder.com.

Additional materials: 

You will need to download and install the free Python development package (version 2.x and NOT version 3.x) from the Python website. Appendix A of the textbook walks you through the installation of Python.

Course delivery

This course is available in an online format, utilizing web pages and eLearning, a learning management system requiring Internet access and a web browser. Students may need access to someone who can assist with computer set-up.


Mark Fienup

Enrollment information

Tuition: $257/unit, plus non-refundable enrollment fee of $10 and technology fee of $38 for online courses

To enroll: Visit the GIS Enrollment page for forms and information. Or visit us at CEEE 010 on the UNI campus. Campus map

Guided Independent Study
UNI Continuing and Distance Education
319-273-2123 or 800-772-1746

For a complete GIS overview, visit our GIS Orientation Guide to learn how you can be a successful GIS student.