abstraction and abstract thinking part 1 “algorithms” part 2 “abstract networks”
DESCRIPTION
Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”. Recap Statement of The Problem Theory of the Problem Modelling of the Problem Algorithmic description Programming the Algorithm Executing the Program. Future delights. today. done. done. Abstraction. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/1.jpg)
Abstraction and Abstract Thinking
Part 1 “Algorithms”
Part 2 “Abstract Networks”
![Page 2: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/2.jpg)
![Page 3: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/3.jpg)
Recap
Statement of The Problem
Theory of the Problem
Modelling of the Problem
Algorithmic description
Programming the Algorithm
Executing the Program
done
done
today
Future delights
![Page 4: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/4.jpg)
![Page 5: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/5.jpg)
The ability to separate the high level view of an entity or an operation from the low-level details of its implementation.
Abstraction
![Page 6: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/6.jpg)
![Page 7: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/7.jpg)
AbstractProcess / (Data)
Non-AbstractProcess / (Data)
![Page 8: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/8.jpg)
![Page 9: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/9.jpg)
Take the first three digits of your phone number and multiply by 80
Add 1 to the result
Now Multiply by 250 and add the last 4 digits of your phone number
Add the last 4 digits of your phone number again
Subtract 250 and divide by 2. What do you see?
A Fun Algorithm
![Page 10: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/10.jpg)
![Page 11: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/11.jpg)
A Serious Algorithm – Sum of a List
Get the list of numbersSet sum to zero
Move through the list until it is ended
get the next number in the list add it to the sum
Output the sum
![Page 12: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/12.jpg)
![Page 13: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/13.jpg)
The Gale-Shapley algorithm involves a number of iterations.
Each unengaged man proposes to the preferred woman to whom he has not yet proposed.
Each woman then considers all her suitors and tells the one she most prefers "Maybe" and all the rest of them "No".
She is then provisionally "engaged".
In each subsequent round, each unengaged man proposes to one woman to whom he has not yet proposed.
The women once again replies with one "maybe" and rejects the rest.
A fun Algorithm - Stable Marriage
![Page 14: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/14.jpg)
![Page 15: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/15.jpg)
Stable Marriage - Example
A W
B X
C Y
D Z
A W
B X
C Y
D Z
A W
B X
C Y
D Z
A W
B X
C Y
D Z
![Page 16: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/16.jpg)
A W
B X
C Y
D Z
A W
B X
C Y
D Z
A W
B X
C Y
D Z
A W
B X
C Y
D Z
A W
B X
C Y
D Z
![Page 17: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/17.jpg)
An algorithm is a well-ordered collection of unambiguous and effectively computable operations that, when executed, produces a result, and halts in a finite amount of time. Schneider and Gersting (2004).
Definition of an Algorithm
Algorithms are concepts which exist outside programming languages. They are abstract method for computing something, whereas a program is an embodiment of this method. Donald Knuth (1966)
![Page 18: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/18.jpg)
![Page 19: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/19.jpg)
Fun -3- Magic Card Trick
![Page 20: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/20.jpg)
![Page 21: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/21.jpg)
Consider this example taken from the instructions on the back of a shampoo bottle:
• Wet hair• Lather• Rinse• Repeat
Is this an Algorithm?
![Page 22: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/22.jpg)
![Page 23: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/23.jpg)
AlgorithmicProcess
Non-AlgorithmicProcess
![Page 24: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/24.jpg)
![Page 25: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/25.jpg)
Examples of Recent Serious Algorithms
(1) Matching of kidney donor – recipients
(2) Traffic-flow engineering
(3) Cancer Research.
Examples of “Standard” Computing Algorithms
(1a) Sequential Search
(1b) Binary Search
(2a) Selection Sort
(2c) Quicksort
![Page 26: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/26.jpg)
![Page 27: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/27.jpg)
DanielBob GrantAnne Carol Nathan Sue
Sequential Search Algorithm - Description
![Page 28: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/28.jpg)
![Page 29: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/29.jpg)
DanielBob GrantAnne Carol Nathan Sue
Sequential Search Algorithm - Example
![Page 30: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/30.jpg)
![Page 31: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/31.jpg)
Binary Search Algorithm - Description
1. Get the list of names 1,2,3,…N
2. Set “begin” to 1 and “end” to N
3. Set “found” to no
4. While “found” is no
1. Set “m” to middle value between “begin” and “end”
2. If “name” is “asked name”
1. Set “found” to yes
3. Else if “name” precedes “asked name” set “end” = m - 1
4. Else set “begin” to m + 1
![Page 32: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/32.jpg)
![Page 33: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/33.jpg)
DanielBob GrantAnne Carol Nathan Sue
Binary Search Algorithm - Example
![Page 34: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/34.jpg)
![Page 35: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/35.jpg)
How to Make a Binary Tree
![Page 36: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/36.jpg)
![Page 37: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/37.jpg)
Daniel
Bob Nathan
Anne Carol Grant Sue
Binary Search (Tree Representation)
![Page 38: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/38.jpg)
![Page 39: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/39.jpg)
Depth of a Binary Tree (complete)
1 2 34 5 67 8 9 10 11 12 13 14 15
4
2
1 3
6
5 7
![Page 40: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/40.jpg)
![Page 41: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/41.jpg)
Depth of a Binary Tree (incomplete)
1 2 3 4 5 6 7 8
4
2
1 3
6
5 7
8
![Page 42: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/42.jpg)
![Page 43: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/43.jpg)
0
10
20
30
40
50
60
0 10 20 30 40 50 60
Series1
Series2
Comparison of Sequential and Binary Search
![Page 44: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/44.jpg)
![Page 45: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/45.jpg)
Selection Sort Algorithm - Description
1. Get the list of numbers
2. Put the wall at the beginning
3. While there are more elements in the unsorted part
1. Find the smallest element
2. Swap with the first element in the unsorted part
3. Move the wall one element to the right
![Page 46: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/46.jpg)
![Page 47: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/47.jpg)
10 30 20 5 18 25
Selection Sort Algorithm - Example
![Page 48: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/48.jpg)
![Page 49: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/49.jpg)
Quick Sort Algorithm - Description
1. Get the list
2. Choose a “pivot” from the list
3. Move all elements less than the pivot to the left of the pivot and the greater elements to the right of the pivot.
4. Recursively apply 2,3 to the sub-lists generated
![Page 50: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/50.jpg)
![Page 51: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/51.jpg)
13 81 92 65 43 31 57 26 75 0
Quicksort Algorithm Example
![Page 52: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/52.jpg)
![Page 53: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/53.jpg)
0
50000
100000
150000
200000
250000
0 50000 100000 150000 200000 250000
Series1
Series2
Comparison of Selection sort and Quicksort
![Page 54: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/54.jpg)
![Page 55: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/55.jpg)
Hamiltonian Cycles
Problem: Find a path between n cities to
(i) Visit each city once
(ii) End up at the starting city.
![Page 56: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/56.jpg)
![Page 57: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/57.jpg)
A B
C D
Hamiltonian Cycles
![Page 58: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/58.jpg)
![Page 59: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/59.jpg)
Application of the TSP is to logistics. Good routes or schedules for:
• trucks (Dantzig & Ramser, 1959)• order-pickers in a warehouse (Ratli & Rosenthal, 1981)• service engineers (Pante, Lowe & Chandrasekaran, 1987)• aircraft (Boland, Jones & Nemhauser, 1994)• tourists (Gentili, 2003)
Travelling Salesman Problem
Find the Hamiltonian circuit between a number of cities where each link has an associated cost
![Page 60: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/60.jpg)
![Page 61: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/61.jpg)
TSP – Simulated Annealing
1 pick an initial solution
2 set an initial temperature
3 choose the next neighbour of the current solution:
4 if the neighbour is “better” make that neighbour the current solution
5 if the neighbour is “worse”, make this neighbour the current solution, based on the temperature and how “worse” the neighbour is. (Probabilitistic calculation).
6 decrease the temperature slightly
7 go to 3.
![Page 62: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/62.jpg)
![Page 63: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/63.jpg)
TSP – Ant Colony Model
![Page 64: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/64.jpg)
![Page 65: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/65.jpg)
Pattern Matching
C C G A T A C G T T A G C T T A C
![Page 66: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/66.jpg)
![Page 67: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/67.jpg)
Pattern Matching (Worst Case -1-)
C C C C C C C C C
![Page 68: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/68.jpg)
![Page 69: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/69.jpg)
Pattern Matching (Worst Case -2-)
A A A A A A A A A
![Page 70: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/70.jpg)
![Page 71: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/71.jpg)
Pattern Matching (Best Case)
A B C D E F G H I
![Page 72: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/72.jpg)
![Page 73: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/73.jpg)
Worst-Case Execution Time of Algorithms
Sequential Search
Binary Search
Selection Sort
Quicksort
Pattern Matching
Permutation
2
( )
(log )
( )
( log )
( )
(2 )n
n
n
n
n n
mn
![Page 74: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/74.jpg)
![Page 75: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/75.jpg)
Worst-Case Execution Time on a 2GHz Pentium
2
( )
(log )
( )
( log )
( )
(2 )n
n
n
n
n n
mn
10 20 100 1000n
![Page 76: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/76.jpg)
![Page 77: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/77.jpg)
Programming Problems
Uncomputable Computable
Time Space
Tractable Intractable
Classification of Algorithms
![Page 78: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/78.jpg)
![Page 79: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/79.jpg)
A.N.Whitehead and Leibnitz
“It is a profoundly erroneous truism, repeated by all copy books and by eminent people when they are making speeches, that we should cultivate the habit of thinking of what we are doing.
The precise opposite is the case. Civilization advances by extending the number of important operations which we can perform without thinking”.
An Introduction to Mathematics (1911).
“It is unworthy of excellent men to lose hours like slaves in the calculation which could safely be relegated to anyone else if machines were used”
![Page 80: Abstraction and Abstract Thinking Part 1 “Algorithms” Part 2 “Abstract Networks”](https://reader030.vdocuments.site/reader030/viewer/2022033022/56812c27550346895d9099da/html5/thumbnails/80.jpg)