衡量算法快慢的标准 时间复杂度 空间复杂度 占用的内存空间 1. 常见的时间复杂度(按效率排序) O(1)list[j+1]: list[j],list[j+1]=list[j+1],list[j] flag=False 只要走过一次循环就会更改这个值 if flag: 若一次循环条件if没走到,换 ...
分类:
编程语言 时间:
2020-03-15 13:32:07
阅读次数:
47
C动态内存分配:malloc / realloc / calloc 1)void *malloc( size_t size ); malloc的参数是用户所需内存空间大小的字节数,不会对申请成功的内存初始化。 malloc 申请空间时并不是需要多少就申请多少,而是会多申请一些空间: a.多申请一个3 ...
分类:
编程语言 时间:
2020-03-15 09:25:51
阅读次数:
69
数组的概念 数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。 线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后两个方向。除了数组,链表、队列、栈等也是线性表结构。 使用数组的优势在于:数组支持随机访问,根据下标随机访问的时间复杂度为 ...
分类:
编程语言 时间:
2020-03-14 13:02:25
阅读次数:
80
一、线程和进程之间的区别 1.进程:一个在内存中运行的应用程序。每个进程都有自己独立的一块内存空间,一个进程可以有多个线程,比如在Windows系统中,一个运行的xx.exe就是一个进程。进程中的一个执行任务(控制单元),负责当前进程中程序的执行。一个进程至少有一个线程,一个进程可以运行多个线程,多 ...
分类:
编程语言 时间:
2020-03-14 11:21:04
阅读次数:
73
过程: 发现无用对象(无任何变量引用该对象) 回收无用对象所占的内存空间 分代机制: 分代垃圾回收机制,是基于这样一个事实: 不同的对象的生命周期是不一样的。因此,不同生命周期的对象可以采取不同的回收算法,以便提高回收效率.我们将对象分为三种状态:年轻代,年老代,持久代。同时,将处于不同状态的对象放 ...
分类:
其他好文 时间:
2020-03-13 20:22:53
阅读次数:
43
一、打开文件 1.路径分隔符转义问题 ① open(r'C:\a\nb\c\d.txt') ②open('C:/a/nb/c/d.txt') 2.打开方法 file1=open(r'aaa/a.txt',mode='rt')#这里的file1是一个变量名,占用应用程序内存空间 3.操作文件 应用程序 ...
分类:
其他好文 时间:
2020-03-13 19:02:41
阅读次数:
63
一、with的使用 with open('a.txt',mode='rt') as f1: res=f1.read() print(res)# f1=open('a.txt',mode='rt') with方法可以在执行完子代码后自动关闭文件,节约内存空间。 二、指定字符编码 强调:t和b不能单独使 ...
分类:
其他好文 时间:
2020-03-13 19:01:47
阅读次数:
80
微信公众号:小樊Study关注共同学习,问题或建议,请公众号留言!!! Python 数字数据类型用于存储数值。数据类型是不允许改变的,这就意味着如果改变数字数据类型的值,将重新分配内存空间。以下实例在变量赋值时 Number 对象将被创建: 1var1 = 12var2 = 10 您也可以使用de ...
分类:
编程语言 时间:
2020-03-13 13:15:15
阅读次数:
74
1.字符串的不可变 指的是已经存在的值,看似可以被改变,其实只是变量指向的地址改变了,内存中新开辟了一个内存空间,原来的值并未被抹去。 var str='pink'; str='red'; 首先,内存中开辟了一个内存空间用来存放pink,str指向这个内存地址,当执行到第二句时,内存中开辟了一个新的 ...
分类:
编程语言 时间:
2020-03-12 23:19:53
阅读次数:
60
OpenCV在对Mat对象进行初始化时,经常需要对矩阵的类型进行定义,这就需要用到类似于CV_8UC3的表达。 该宏定义的通式为: 1、bit_depth:比特数,有代表8bite\16bite\32bite\64bite 8表示你所创建的储存图片的Mat对象中,每个像素点在内存空间所占的空间大小8 ...
分类:
其他好文 时间:
2020-03-12 19:07:26
阅读次数:
369