From 1654f1b14fc8ce09ec8fd3707d900f4ba8a407f0 Mon Sep 17 00:00:00 2001 From: Kyle Isom Date: Tue, 10 Apr 2018 07:08:48 -0700 Subject: [PATCH] adsep: start algorithms + data structs = programs. --- adsep/chapter01/notes.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 adsep/chapter01/notes.md diff --git a/adsep/chapter01/notes.md b/adsep/chapter01/notes.md new file mode 100644 index 0000000..013cfb7 --- /dev/null +++ b/adsep/chapter01/notes.md @@ -0,0 +1,28 @@ +# Fundamental Data Structures + ++ information to be processed: *abstraction* of some part of the real + world ++ computer has a selected set of *data* about the real world ++ this data is an abstraction: + + certain properties/characteristics of the real world are ignored + because they are considered peripheral to the problem + + therefore represents a simplification of facts ++ problem solving: defining the set of characteristics relevant to the + problem ++ the *choice of representation* may involve several levels of detail: + consider deciding the position of an object. + + polar v. cartesian coordinates (and selection of origin) + + floating point v. integer representation of coordinates + +## The concept of data type + ++ in maths, we have different types: whole, integer, rational, etc... ++ principle: *every constant, variable, expression, or function is of + a certain data type* ++ adherence to this means the compiler can check constructs for + legality and compatibility ++ programming languages provide base data types, which can be extended + by the programmer ++ *cardinality*: the number of distinct values belonging to some type + *T* +