首页 计算机科学与编程导论 教学大纲

The Outline ofIntroduction to Computer Science and Programming

  1. Basic Teaching Information

Course Code:2000520013002

Course TitleIntroduction to Computer Science and Programming

FacultyMustafa Misir

(Duke Kunshan Uni.)

Targeted Student1st / 2nd year students of Computer Science or other related majors

Course Credit1

Lecture Hours

consisted of 10 theoretical hours and 6 practical hours

Course

Leader

NameMustafa Misir

E-mailmustafa.misir@dukekunshan.edu.cn

Office

Mobile

Course

Staff

Name

E-mail

Office

Mobile

Course TypeCore General Course

Related Preview Courses

- COMPSCI 101: Introduction to Computer Science (Duke Kunshan University)

- 6.00: Introduction to Computer Science and Programming (MIT)

- CS 50: Introduction to Computer Science (Harvard University)





1.Course Introduction

 

Computer Science (CS) is the study of computation, automation, and information. It spans theoretical disciplines such as algorithms, theory of computation, information theory, and automation, to practical disciplines including the design and implementation of hardware and software. Algorithms and Data Structures are central to CS.

 

As an introductory course, fundamental knowledge on a variety of CS topics will be offered while providing essential computational problem-solving skills with hands on programming experience, in Python. This course is open to everyone, with no prerequisites. Successfully completing it will serve as a solid foundation for other courses in CS and relevant majors such as Computer Engineering, Information Sciences, Software Engineering, and Data Science. It can also bring new concepts and tools to other domains such as Social Sciences, Arts, Humanities and Natural Sciences.

 

2.The Allocation of Content and Lecture Hours


Content

Lecture Hours


Computer Science: Basics

1 hour

Python Programming

Background

1 hour

Variables, Statements and Basic Operators

1 hour

Control Statements

1 hour

Functions

1 hour

Strings

1 hour

Sequence Collections: Lists

1 hour

Non-sequence Collections: Dictionaries

1 hour

Files

1 hour

Algorithmic Concepts and Computational Problems

Recursion

1 hour

Searching and Sorting

1 hour

Computational Complexity

2 hours

Elementary Data Structures

Stacks

1 hour

Queues

1 hour

Linked Lists

1 hour

3.Assessment Methods and Marking Criterion

Assignments and Final Exam.

4.Textbooks and References

There is no official textbook for this course. Nevertheless, the following books can be used as references.

  • Introduction to Computation and Programming Using Python: With Application to Computational Modeling and Understanding Data, John V. Guttag (3rd Edition), 2021, MIT Press [ Source Code in Python ]

  • Introducing Python for Computer Science and Data Scientists, Paul Deitel, Harvey Deitel (1st Edition), 2020, Pearson

  • Computer Science: an Interdisciplinary Approach, Robert Sedgewick, Kevin Wayne (1st Edition), 2016, Addison Wesley

  • Explorations in Computing: An Introduction to Computer Science and Python Programming, John S. Conery (1st Edition), 2014, Chapman and Hall/CRC

  • Foundations of Computer Science: C Edition, Al Aho, Jeff Ullman (1st Edition), 1994 / 1995, W.H. Freeman (Free Book)

  • Computer Science: An Overview, Glenn Brookshear, Dennis Brylow-Pearson (13th Edition), 2018, Pearson

  • Computer Science Distilled: Learn the Art of Solving Computational Problems, Wladston Ferreira Filho (1st Edition), 2017, Code Energy LLC

  • Data Structures and Algorithms in Python, Michael T. Goodrich, Roberto Tamassia, Michael H. Goldwasser (1st Edition), 2013, Wiley

  • Python Programming: An Introduction to Computer Science, John Zelle (3rd Edition), 2016, Franklin, Beedle & Associates

  • Problem Solving with Algorithms and Data Structures using Python, Brad Miller and David Ranum, Franklin (2nd Edition), 2011, Beedle & Associates (Free Book)

  • Starting out with Python, Tony Gaddis (5th Edition), 2021, Pearson

  • Python Programming and Numerical Methods: A Guide for Engineers and Scientists , Qingkai Kong, Timmy Siauw, Alexandre Bayen (1st Edition), 2020, Academic Press (Free Book)

  • Think Python: How to Think Like a Computer Scientist, Allen B. Downey (2nd Edition), 2016, O'Reilly Press (Free Book)

  • How to Think Like a Computer Scientist: Learning with Python 3, Peter Wentworth, Jeffrey Elkner, Allen B. Downey, Chris Meyers (3rd Edition), 2012 (Free Book)

  • A Programmer's Guide to Computer Science (Vol. 1), William M. Springer II (1st Edition), 2019, Jaxson Media

  • A Programmer's Guide to Computer Science (Vol. 2), William M. Springer II (1st Edition), 2020, Jaxson Media

  • A Byte of Python, Swaroop C. H. (4th Edition), 2016 (Free Book)

  • Project Python, Devin Balkcom, 2011 (Free Book)

  • Python for Everybody: Exploring Data in Python 3, Charles Severance, 2016 (Free Book)

  • Automate The Boring Stuff With Python, Al Sweigart (2nd Edition), 2019, No Starch Press (Free Book)

  • Beyond the Basic Stuff with Python: Best Practices for Writing Clean Code, Al Sweigart (1st Edition), 2020, No Starch Press (Free Book)

  • Python Programming in Context, Bradley N. Miller, David L. Ranum, Julie Anderson (3rd Edition), 2019, Jones & Bartlett Learning

  • A Hands-On, Project-Based Introduction to Programming, Eric Matthes (2nd Edition), 2016, No Starch Press (Free Book)

  • Learn Python 3 the Hard Way, Zed A. Shaw (1st Edition), 2017, Addison-Wesley

  • Introducing Python: Modern Computing in Simple Packages, Bill Lubanovic (2nd Edition), 2019, O'Reilly Press

  • Clean Code in Python: Develop Maintainable and Efficient Code, Mariano Anaya (2nd Edition), 2021, Packt

  • The Self-Taught Computer Scientist: The Beginner's Guide to Data Structures & Algorithms, Cory Althoff (1st Edition), 2021, Wiley

  • The Big Book of Small Python Projects: 81 Easy Practice Programs, Al Sweigart (1st Edition), 2021, No Starch Press (Free Book)

  • Invent Your Own Computer Games with Python, Al Sweigart (4th Edition), 2016, No Starch Press (Free Book)

  • Cracking Codes with Python: An Introduction to Building and Breaking Ciphers, Al Sweigart (1st Edition), 2018, No Starch Press (Free Book)