ASU 101: The ASU Experience Computer Science Perspective

Slides:



Advertisements
Similar presentations
Complexity. P=NP? Who knows? Who cares? Lets revisit some questions from last time – How many pairwise comparisons do I need to do to check if a sequence.
Advertisements

Algorithm and Complexity Analysis
Lower Bounds & Models of Computation Jeff Edmonds York University COSC 3101 Lecture 8.
Computability & Complexity. Scenario I can’t write this program because I’m too dumb.
Agenda Blog signup… First week impressions – High School vs. University.. Career Night – Sep 12 th (Wed) CS outcomes Complexity.
Computability and Complexity 20-1 Computability and Complexity Andrei Bulatov Random Sources.
Agenda Blog signup… First week impressions – High School vs. University.. Career Night CS outcomes Complexity.
CSE115/ENGR160 Discrete Mathematics 03/03/11 Ming-Hsuan Yang UC Merced 1.
Chapter 1 pp 1-14 Properties of Algorithms Pseudocode.
Analysis of Algorithms CS 477/677
CS2420: Lecture 4 Vladimir Kulyukin Computer Science Department Utah State University.
Chapter 11: Limitations of Algorithmic Power
CS10 The Beauty and Joy of Computing Lecture #23 : Limits of Computing Thanks to the success of the Kinect, researchers all over the world believe.
Halting Problem. Background - Halting Problem Common error: Program goes into an infinite loop. Wouldn’t it be nice to have a tool that would warn us.
1 CE 221 Data Structures & Algorithms Chapter 1 Introduction Text: Read Weiss, §1.1 – 1.3 Izmir University of Economics.
Unsolvability and Infeasibility. Computability (Solvable) A problem is computable if it is possible to write a computer program to solve it. Can all problems.
Halting Problem Introduction to Computing Science and Programming I.
1 Algorithms CS/APMA 202 Rosen section 2.1 Aaron Bloomfield.
1 Algorithms CS 202 Epp section ??? Aaron Bloomfield.
1 Section 2.1 Algorithms. 2 Algorithm A finite set of precise instructions for performing a computation or for solving a problem.
Halting Problem and TSP Wednesday, Week 8. Background - Halting Problem Common error: Program goes into an infinite loop. Wouldn’t it be nice to have.
NP-complete Problems Prof. Sin-Min Lee Department of Computer Science.
CS10: The Beauty and Joy of Computing Lecture #22 Limits of Computing Warning sign posted at Stern Hall. Also, Apple releases new operating.
Complexity & Computability. Limitations of computer science  Major reasons useful calculations cannot be done:  execution time of program is too long.
2101INT – Principles of Intelligence Systems Lecture 3.
CML CML ASU 101: The ASU Experience Computer Science Perspective Aviral Shrivastava Compiler Microarchitecture Lab Arizona State University.
The Beauty and Joy of Computing Lecture #23 Limits of Computing Researchers at Facebook and the University of Milan found that the avg # of “friends” separating.
Flowcharts C++ Lab. Algorithm An informal definition of an algorithm is: a step-by-step method for solving a problem or doing a task. Input data A step-by-step.
Lecture 2 Algorithm Analysis
CSE15 Discrete Mathematics 03/06/17
Graphs 4/13/2018 5:25 AM Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015 NP-Completeness.
Growth of Functions & Algorithms
Introduction to Computing Science and Programming I
NP-Completeness NP-Completeness Graphs 5/7/ :49 PM x x x x x x x
Applied Discrete Mathematics Week 2: Functions and Sequences
Introduction to Randomized Algorithms and the Probabilistic Method
COP 3503 FALL 2012 Shayan Javed Lecture 15
Data Structures and Algorithms
GC211Data Structure Lecture2 Sara Alhajjam.
MA/CSSE 473 Day 02 Some Numeric Algorithms and their Analysis
CSE 20: Discrete Mathematics for Computer Science Prof. Shachar Lovett
Enough Mathematical Appetizers!
Computation.
CS 3343: Analysis of Algorithms
NP-Completeness NP-Completeness Graphs 11/16/2018 2:32 AM x x x x x x
What is CS?.
RAJALAKSHMI ENGINEERING COLLEGE
Class 14: Intractable Problems CS150: Computer Science
How Hard Can It Be?.
Introduction to Algorithms
Module #7: Algorithmic Complexity
NP-Completeness NP-Completeness Graphs 12/3/2018 2:46 AM x x x x x x x
Applied Discrete Mathematics Week 6: Computation
Lecture 22: P = NP? CS200: Computer Science University of Virginia
Discrete Mathematics CS 2610
1. for (i=0; i < n; i+=2) if (A[i] > A[i+1]) swap(A[i], A[i+1])
Big-O, Ω, ϴ Trevor Brown CSC263 Tutorial 1 Big-O, Ω, ϴ Trevor Brown
Halting Problem.
Discrete Math for CS CMPSC 360 LECTURE 43 Last time: Variance
Searching, Sorting, and Asymptotic Complexity
Asst. Dr.Surasak Mungsing
Module #7: Algorithmic Complexity
CSC 380: Design and Analysis of Algorithms
Enough Mathematical Appetizers!
Enough Mathematical Appetizers!
Discrete Mathematics 7th edition, 2009
Estimating Algorithm Performance
Algorithms.
Discrete Mathematics CS 2610
Richard Anderson Autumn 2019 Lecture 7
Presentation transcript:

ASU 101: The ASU Experience Computer Science Perspective Aviral Shrivastava Compiler Microarchitecture Lab Arizona State University

Why is ASU an NAU?

Today’s Question What major CS theorem did someone claimed to have proved recently? P=NP?

Homework Write a sorting program in any language you want, and post the solution on your blog. Should take a bunch of numbers as input. Should print them out in increasing order. Also let me know how much time it took you to do the assignment Deadline: Sunday 05 Sept 2010.

Sorting Input: Output IsSorted(A, n) Array of n numbers, a[0] … a[n-1] Array of the same n numbers, such that For each i=0 to n-2, a[i] <= a[i+1] IsSorted(A, n) Definitely need this ability O(n)

Random Sort In loop If array not sorted Else Pick any two elements at random, and swap them to put them in the right order Else Exit Random sort is not algorithm; Perm sort is an algorithm.

Permutation Sort In a loop If array not sorted Else Permute the elements Else Exit; Random sort is not algorithm; Perm sort is an algorithm.

Algorithm An 'algorithm' is a method for solving a problem expressed as a finite sequence of instructions. Proof of correctness: always give the right answer and never give a wrong answer Proof of termination: always be completed in a finite number of steps, rather than in an infinite number

How fast can you sort? Permutation sort takes O(n * n!) time Can sort in O(n2) time Need at least O(n log n) time

How do you know problem is hard? If solving it takes too much time. We kind of felt that O(N! * N) is a bit much complexity How about O(N2)? O(N10)? Where do we draw the line? Meet the Computer Scientist Nightmare So “Polynomial” ~ “easy” & “exponential” ~ “hard” 2n eventually overtakes any nk however large k is.. How do we know if a problem is “really” hard to solve or it is just that I am dumb and didn’t know how to do better? 2n

Exponential growth n n2 n3 n10 2n 1 2 10 100 1000 1010 1024 10000 106 10100 ~1030 1000000 109 101000 ~10300 108 1012 1010000 ~103000 1020 1030 ~103000000000

How to explain to your boss as to why your program is so slow… I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because no such algorithm is possible. I can't find an efficient algorithm, but neither can all these famous people.

Homework Write a sorting program in any language you want, and post the solution on your blog. Should take a bunch of numbers as input. Should print them out in increasing order. Also let me know how much time it took you to do the assignment Deadline: Sunday 05 Sept 2010.