The Computer Science Major and Minor at Davidson

Computer science combines problem-solving skills with cutting-edge technology to develop automated solutions and build systems for individuals and societies in diverse applications.

A major or minor in Computer Science can support the students interested not only in the creative, beautifully abstract computing problems and techniques, but also in the application and expression of those sophisticated concepts for the benefit of sciences and societies. Several of our students have entered distinguished graduate programs in computer science at Stanford, Duke, and Washington University in St. Louis, after earning their undergraduate degree. Both faculty and students have won national and international recognition for software development within physics and bioinformatics.

Courses You Might Take

CSC 220

Discrete Structures

Instructor
H. Smith

(Cross-listed as MAT 220) 

An introduction to proof techniques and discrete mathematics, with a focus on topics relevant to computer science, and an introduction to functional programming. Topics include logic, sets, functions, equivalence relations, algorithm analysis, methods of proof, essential…

CSC 322

Programming Languages

Instructor 
Mendes
 
Principles of programming languages, including lexical and syntactic analysis, semantics, types, functions and parameters, and memory management.  Programming paradigms, drawn from imperative, object-oriented, functional, and logical programming languages.  

Prerequisites
Computer Science 221.

CSC 359

Networks & Distributed Systems

Instructor
Mendes

Computer networks have revolutionized the way societies create and communicate information.  In particular, the Internet is a massive deployment of network algorithms and systems, with lasting social, scientific, and economical impact.  Network algorithms and systems are specified by…