Some Notes
Be HardWorking Every Day.
结构体使用 struct 关键字定义。对于目前的我来说,没什么要记的。例如:
struct
struct test { int val, num; }a; a.val;
优化。顾名思义,将一整个有序的数列分成两个部分,不断缩小边界,查找某个数字。二分的时间复杂度为 $O(log\ 2\ n)$ 。
此时,我们学的还是整数二分以及浮点二分。
二分的前提是这个序列是有序的,也就是单调递增的。一般来说,二分会取中间值进行初始化,再判断这个中间值是否大于目标值。若是,则缩减左边界,否则缩减右边界。直至逼近答案。说“逼近”,是因为有时查找的元素不存在于序列中,那所二分出的答案是接近于的,但又是不正确的。所以要加上一个特判。除非说明给出的想查询的元素所有都是存在于序列中的。
指针,顾名思义,就是指向某一东西的标志。
当我们想存地址时,就可以使用指针变量:
int a ; int *b = &a ;
b就是一个指针变量,存着a的地址。
b
a
宏定义,将一个指令导向另一个指令。宏定义属于预处理指令,使用规范为:
#define [标识符] [常量]