adding lecture 4 notes
This commit is contained in:
32
lectures/04_pointers/README.md
Normal file
32
lectures/04_pointers/README.md
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
# Lecture 4 --- Pointers, Arrays, & Pointer Arithmetic
|
||||||
|
|
||||||
|
- Pointers store memory addresses.
|
||||||
|
- They can be used to access the values stored at their stored memory address.
|
||||||
|
- They can be incremented, decremented, added, and subtracted.
|
||||||
|
- Dynamic memory is accessed through pointers.
|
||||||
|
- Pointers are also the primitive mechanism underlying vector iterators, which we have used with std::sort and
|
||||||
|
will use more extensively throughout the semester.
|
||||||
|
|
||||||
|
## 4.1 Pointer Example
|
||||||
|
|
||||||
|
- Consider the following code segment:
|
||||||
|
|
||||||
|
```cpp
|
||||||
|
float x = 15.5;
|
||||||
|
float *p; /* equiv: float* p; or float * p; */
|
||||||
|
p = &x;
|
||||||
|
*p = 72;
|
||||||
|
if ( x > 20 )
|
||||||
|
cout << "Bigger\n";
|
||||||
|
else
|
||||||
|
cout << "Smaller\n";
|
||||||
|
```
|
||||||
|
|
||||||
|
The output is Bigger
|
||||||
|
because x == 72.0. What’s going on?
|
||||||
|
|
||||||
|
## 4.2 Exercises
|
||||||
|
|
||||||
|
- [Leetcode problem 905: Sort Array By Parity](https://leetcode.com/problems/sort-array-by-parity/). Solution: [p905_sortarraybyparity.cpp](../../leetcode/p905_sortarraybyparity.cpp)
|
||||||
|
- [Leetcode problem 977: Squares of a Sorted Array](https://leetcode.com/problems/squares-of-a-sorted-array/). Solution: [p977_sortedsquare.cpp](../../leetcode/p977_sortedsquare.cpp)
|
||||||
|
- [Leetcode problem 1051: Height Checker](https://leetcode.com/problems/height-checker/). Solution: [p1051_heightchecker.cpp](../../leetcode/p1051_heightchecker.cpp)
|
||||||
Reference in New Issue
Block a user