notes:data
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
notes:data [2017/11/11 11:49] – [Data Structures Course Notes] bstrong2 | notes:data [2018/10/24 23:39] (current) – [URLs] ktodd3 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ======Data Structures Course | + | <WRAP centeralign round box> |
- | week 11\\ | + | < |
+ | < | ||
+ | <fs 125%>Course | ||
+ | </ | ||
- | 11/7/2017 \\ | + | ======Projects====== |
- | Stacks - Last in, First out - pez dispenser \\ | + | dsi0 |
- | Queues - First in, First out - lines, waiting for something, usually first person gets first pick \\ | + | ael0 |
- | -Andrei | + | ======URLs====== |
+ | Binky Pointer Video: | ||
+ | [[https:// | ||
- | Class of November 9th 2017 | + | [[https:// |
+ | ======Notes====== | ||
+ | ====Pointers: | ||
- | Today in class we wen't over more about the upcoming “tree' | + | char x = 0; |
- | Tree's- The three tree's that we are doing is **In order traversal** which is navigating through the tree by parent, left, then right. Next is **Pre-Order traversal** this is where the order is left, parent, right. This gives you the values from least to greatest. The last one is **Post-Order traversal** which is going from right, parent, left, which gives you greatest to least values in the tree. | + | char -> 1 byte (8 bits) |
+ | Default char -> signed (2^8 -> 256 -> -128, +127 [one is used for positive/ | ||
- | Pol Notation- We wen't over this briefly, but enough to get the premise down. Here is a link to a wiki page about it [[https:// | + | the asterisk (*) indicates |
+ | signed char *y = NULL; | ||
+ | ^ | ||
+ | |||
+ | (void*)0 | ||
+ | Void pointers are raw memory | ||
- | If you are taking Computer Organization next semester, and want to get a head start, then get some practice with [[Intel 64 Bit Assembly]]. | + | |0| |
- | =====week 1===== | + | --- |
+ | x | ||
+ | 0xdeadbeef | ||
+ | | ||
+ | | ||
+ | y | ||
+ | | ||
+ | |||
+ | Access an address with & | ||
- | =====week 2===== | + | Make y = deadbeef without using "deadbeef" |
- | Nodes are structures that contain data and also can point and "link" | + | |
- | Nodes do not necessarily need to be a named variable, but rather can be pointed to by variables that can be moved depending if the list has been changed.(ie. start& | + | y = &x |
+ | Now, y's data is the address of x. | ||
- | Ternary statements= " | + | x contains the data ' |
- | To free memory: use free() then set to null; ex: free(tmp); tmp = NULL; | + | If we do this: |
+ | |0| | ||
+ | --- | ||
+ | x | ||
+ | 0xdeadbeef | ||
+ | | ||
+ | | ||
+ | y | ||
+ | | ||
+ | |||
+ | x = 7; | ||
+ | | ||
+ | Then: | ||
+ | |13| | ||
+ | ---- | ||
+ | x | ||
+ | 0xdeadbeef | ||
+ | | ||
+ | | ||
+ | y | ||
+ | | ||
- | =====I dunno lol===== | + | x is now 13 because y is x's address, |
- | " | + | |
- | =====whaaat===== | ||
- | --i increments before loop, i-- increments after first iteration | ||
+ | Double pointers are arrays or whatever | ||
+ | | | | ||
+ | ------------ | ||
+ | z | ||
+ | | ||
+ | signed char **z = NULL; | ||
+ | | ||
+ | So we're gonna give this some garbage | ||
+ | |0xcoffee| | ||
+ | ---------- | ||
+ | z | ||
+ | 0xc05fefe | ||
+ | And do nothing with it because we kind of just stopped I think. | ||
+ | | ||
+ | Memory addresses are 8 bytes on 64 bit linux systems. | ||
+ | 4 bytes on 32 bit linux systems. | ||
+ | ======Other====== |
notes/data.1510418945.txt.gz · Last modified: 2017/11/11 11:49 by bstrong2