CSE 101 Lecture 1: Unit 1: What is Computational Thinking - 1
Computer science is all about using computers and computing technology to solve challenging,
real-world problems in science, medicine, business, and society
•
Although computer programming is an important aspect of computer science, it would be wrong
to say that "computer science equals computer programming"
•
Rather, computer programs often provide (parts of) the solutions to challenging technological
problems
•
Computer literacy
○
Computer maintenance/repair
○
Computer science is also not:
•
What is Computer Science?
Electronic health records are becoming increasingly important as time goes on
•
What data will be stored? How? In what format?
○
How will the data be accessed and displayed?
○
Who will have access? How will the data be secured?
○
How will the data be backed up and preserved?
○
Consider some of the issues (technical and otherwise) that would arise in solving the problem of
providing a hardware/software system to medical professionals and other people who need
access to digital medical records:
•
Answering these questions requires computational thinking
•
A Modern Computing Problem
Computational thinking refers to how computer scientists think -- how they reason and work
through problems
•
Computer theory areas: algorithms, data structures -- these are the heart and soul of
computer science
○
Computer systems areas: hardware design, operating systems, networks
○
Computer software and applications: software engineering, programming languages,
computer graphics, databases, simulation, artificial intelligence
○
Computer science encompasses many sub-disciplines that support the general goal of solving
problems
•
A major goal of this course is to help develop your computational thinking and problem solving
skills
•
What is Computational Thinking?
Suppose we have a deck of cards we want to put in order
•
This is the important problem of sorting that arises very frequently in computer science
•
To keep things simple, let's just use the Ace through 9 of Hearts
•
We are given: 5, 3, 6, A, 7, 4, 8, 2
•
But we want: A, 2, 3, 4, 5, 6, 7, 8
•
Imagine you wanted to explain to a young child how to put the cards in order. What steps would
you give?
•
One technique is called selection sort
•
It repeatedly searches for and swaps cards in the list
•
A, 3, 6, 5, 7, 4, 8, 2
○
First, find the smallest item and exchange it with the card in the first position
•
A, 2, 6, 5, 7, 4, 8, 3
Now, find the second-smallest item and exchange it with the card in the second position
•
A Classical Problem: Sorting Data
Unit 1 - What is Computational Thinking?
Wednesday, June 6, 2018
3:58 PM
CSE 101 Page 1