C++课堂笔记七
全局变量、局部变量、静态变量
定义在函数内部的变量叫局部变量(函数的形参也是局部变量)
定义在所有函数的外面的变量叫全局变量
全局变量在所有函数中均可使用,局部变量只能在定义它的函数内部使用
全局变量都是静态变量。 局部变量定义时如果前面加“static” 关键字,则该变量也成为静态变量
静态变量的存放地址,在整个程序运行期间,都是固定不变的
非静态变量(一定是局部变量)地址每次函数调用是都可能不同,在函数的一次执行期间不变
如果没有明确初始化,则静态变量会被自动初始化成全0(每个bit都是0),局部非静态变量的值则随机
静态变量:
1 | void Func() |
strtok的实现:
1 | int main() |
变量的生存期
选择和插入排序
1 | Void SelectionSort(int a[] ,int size) |
算法和程序的时间复杂度
一个程序或算法的时间效率,也称“时间复杂度”
复杂度常用大写字母O和小写字母n来表示,比如O(n), O(n2)等。n代表问题的规模
时间复杂度是用算法运行过程中,某种时间固定的操作需要被执行的次数和n的关系来度量的。在无序数列中查找某个数,复杂度是O(n)
计算复杂度的时候,只统计执行次数最多的(n足够大时)那种固定操作的次数。如某个算法需要执行加法n2次,除法n次,那么就记其复杂度是O(n2)的
复杂度有平均复杂,度个最坏复杂度,可以一致,可以不一致。
常数复杂度:时间(操作次数)和问题的规模无关