Apr 26, 2024  
2016-2017 
    
2016-2017 [ARCHIVED CATALOG]

Computer Science


Return to {$returnto_text} Return to: Academic Disciplines

Professors: Chartier, Heyer (Chair), Mossinghoff, Neidinger
Associate Professor: Yerger
Assistant Professors: Kabala, Kuchera, Mendes, Peck, Ramanujan
 

Major in Computer Science


Major Prerequisites

Introductory programming - satisfied by:

MAT 111  or MAT 112  (or AP/IB credit for Calculus I)

Major Requirements

A major in Computer Science consists of 10 courses: 9 computer science courses (four core courses and five electives) and one mathematics course.  Of the five electives, at least one must come from Systems and at least one must come from Applications.  The other three electives are unrestricted.  CSC/MAT 220 and CSC 221 should be completed before spring of the junior year.

Special topics seminars may be offered on occasion that would fall under the Applications (CSC 381 ), Systems (CSC 382 ), Theory (CSC 383 ) or Other (CSC 384 ) category of electives.  Independent studies (CSC 395  or CSC 495 ) may be applied to the major with approval of the department chair.

Minor in Computer Science


The Minor in Computer Science consists of six courses, distributed as follows.

  1. Introductory Programming: one of

    CSC 120 - Programming in Humanities (= DIG 120)  
      
      
      
     
  2. Data Structures

      
     
  3. Discrete Mathematics

    CSC 220 - Discrete Structures (= MAT 220)  
     
  4. Systems:

    CSC 250 - Computer Organization  
     
  5. Electives - two of:

     
     
     
      
    CSC 357 - Concurrent and Parallel Computing  
    CSC 361 - Computer Graphics  
    CSC 362 - Data Visualization  
    CSC 370 - Artificial Intelligence  
    CSC 371 - Machine Learning  


    Special topics seminars may be offered on occasion that would fall under the Applications (CSC 381 ), Systems (CSC 382 ), Theory (CSC 383 ) or Other (CSC 384 ) category of electives.  Independent studies (CSC 395  or CSC 495 ) may be applied to the minor with approval of the department chair.

    Courses taken Pass/Fail at Davidson College may not count toward the minor in Computer Science.  A grade of C or higher is required in all courses applied toward the minor.

Graduate Studies in Computer Science


Students considering graduate school in computer science should include MAT 150 and MAT 324 in their coursework, and seek opportunities to engage in research and compete in programming contests.  The Graduate Record Examination should be taken during the fall semester of the senior year.

Honors in Computer Science


The Mathematics and Computer Science Department grants honors to graduating students with outstanding records of accomplishment in computer science, as demonstrated in three areas: breadth and depth of curriculum, quality of academic performance, and significance of a scholarly thesis project.  The breadth and depth of curriculum is achieved by taking MAT 150, two 300- or 400-level electives in the Applications category, CSC 351 plus another 300- or 400-level elective in the Systems category, and CSC 324 plus another 300- or 400-level elective in the Theory or Other categories. 

All candidates for honors must prepare an honors thesis and defend the thesis orally before faculty in the department. Candidates must attain grade point averages of at least 3.2 overall and 3.5 on all Computer Science courses numbered above 210. The final recommendation of the Department for graduation with honors is determined by the quality of the candidate’s complete academic record, thesis, and defense. At the Department’s discretion, in the case of an exceptional academic record, together with a thesis of the highest quality incorporating original mathematical or computational methods, the Department confers high honors.

The Department recommends that students interested in an honors program notify their academic advisers and the chair of the department during the spring semester of the sophomore year, or as soon as possible thereafter.  During the junior year, such a student should identify an area of computer science for exploration and seek out a member of the department to serve as a potential honors supervisor.  Formal declaration of pursuit of honors is recommended by the end of the advising period in the spring of the junior year and is due by the end of the first week of classes of the senior year.  See the department chair for the appropriate form and further details on the honors process and requirements.

Computer Science Courses


The 100-level courses are introductory and are open to students with no prior coursework in Computer Science.  The 200-level courses are either intermediate courses in fundamental Computer Science, or interdisciplinary introductory programming courses.  The 300-level courses cover more advanced fundamental topics in Computer Science, and typically require one or more 200-level courses as prerequisites.  The 400-level courses involve advanced topics.

Return to {$returnto_text} Return to: Academic Disciplines