- 博客(111)
- 资源 (2)
- 收藏
- 关注
转载 int (*p)[n] 、int *p[n]、int *p()、int *p、int **p、int (*p)()等简单总结
如int *p ={1,2,3}, int **pp=&p,pp=指针p的首地址,*pp=数组的首地址,**pp=数组第一个值1。p[n] 就是一个指针数组,数据类型为int ,元素为地址(变量地址,数组地址,函数地址等),也就是说定义了n个不同指向int型的指针。为了便于理解,可以把这个p换成一个函数的名字 ,比如fun,那么int *fun()代表的是调用这个函数后,这个函数的返回值是一个指针。int **p表示的是二级指针,表示p所指向的地址里面存放的是一个指向int类型的指针。
2023-10-31 13:38:32 558
原创 C++使用两个栈实现双端队列——F1 B1 B2 B3 B4 B5 PF PF PB PB
当有一个栈空,比如左栈v1空了,此时还要从左边出栈,那么把v2的所有元素依次装到v1里面,这样元素的相对顺序就没有变化。如v2从栈顶到栈底有元素5-4-2-3 ,那么装入v1仍是:5-4-2-3,在v1出栈3,就达到了最开始v2想要出栈底元素的内容。示例:F1 B1 B2 B3 B4 B5 PF PF PB PB。用两个栈v1,v2分别表示左栈和右栈,即可实现双端队列。当两个栈都不空的时候,不管前面后面出栈,都直接Pop。当从前面插入元素时,v1.push()当从后面插入元素时,v2.push()
2023-10-12 20:24:46 251
原创 将 ipv4地址 转化为32位无符号整数 ——如 “10.10.1.1” 为168427777
其中每个部分最多三个数字,故使用循环三次获得整数,不足三个数字,检测跳出循环即可。1、依次取出四个部分ip,将其化为整数;若不足四部分,判定为非法ip。2、对每个部分的ip整数,看作是256进制,将其运算叠加,得到答案。如 “10.10.1.1” 为168427777。将 ipv4地址 转化为32位无符号整数。
2023-10-09 21:32:32 310
转载 C++读取含空格的字符串
注意:如果要循环的多次从屏幕上读取一行的话,就要在读取一行后,在用%c读取一个字符,将输入缓冲区中的换行符给读出来。功能是从标准输入键盘上读入一个完整的行(从标准输入读,一直读到遇到换行符),把读到的内容存入括号中指定的字符数组里,并用空字符’\0’取代行尾的换行符’\n’。说明:在scanf函数中,可以使用%c来读取一个字符,使用%s读取一个字符串, 但是读取字符串时不忽略空格,读字符串时忽略开始的空格,并且读到空格为止,因此只能读取一个单词,而不是整行字符串。读入不需要考虑最后的换行符。
2023-10-08 21:08:23 1402
原创 C++智能指针weak_ptr的作用
使用std::weak_ptr来持有A的弱引用,这样不会增加A对象的引用计数。当A对象被释放时,std::weak_ptr会自动失效,不会影响资源的释放。这样就打破了循环引用,避免了资源泄漏的问题。
2023-08-28 14:04:50 94
转载 Pytorch 并行训练(DP, DDP)的原理和应用
5、在主 GPU 上,通过 loss function 计算出 loss,对 loss function 求导,求出损失梯度。3、每个 GPU 分别独立进行前向传播,得到 outputs。1、将 inputs 从主 GPU 分发到所有 GPU 上。2、将 model 从主 GPU 分发到所有 GPU 上。4、将每个 GPU 的 outputs 发回主 GPU。8、将所有梯度回传到主 GPU,通过梯度更新模型权重。6、计算得到的梯度分发到所有 GPU 上。7、反向传播计算参数梯度。9、不断重复上面的过程。
2023-05-22 23:24:56 178
原创 python 安装ffmpeg,将图像序列转化为视频
将图像序列转化为视频,输入两个参数,图片路径,和生成视频的路径。使用方法:`frames_video("masked_frames","./")`
2023-05-05 20:08:29 763
原创 Python 将图像列表转化为多维tensor张量
主要是看__call__() 方法,考虑图像的mode方式,如果是RGB的方式,有不同的处理,主要的函数其实就是。这里其实就是将图像的像素值范围转化,range。下面这两类方法都是自定义的。
2023-04-20 17:19:22 1115
转载 12 gcc、g++、make、cmake区别
gcc/g++应对单个文件比较好,但是当面对大工程时,我们一般会用make工具,make工具则是根据Makefile的信息来进行编译等,但是Makefile在工程比较大的时候,人工手写也是很复杂的,所以有了cmake工具,cmake则是根据文件去生成makefile。到这里套娃结束,因为即使工程再怎么大,认为都是可以去书写CMakeLists.txt 文件的。
2023-04-19 22:02:51 400
原创 如何从阿里云盘下载大文件到自己的电脑或者租赁的服务器中?
你将得到一串字符,将引号里的字符粘贴到刚才在终端login后的地方,即可显示登录成功。使用help可以知道阿里云盘的帮助哈。2、按键盘上的F12键,找到console控制台。如果你是Ubuntu系统的话,直接在使用。1、进入阿里云盘网页版。
2023-04-13 11:49:53 1910 1
转载 11-pytorch中 list 转换为 tensor 张量方法 torch.stack(tensor_list,0)
pytorch中 list 转换为 tensor 张量方法 torch.stack(tensor_list,0)
2022-09-19 22:31:04 1645
原创 10-pytorch中对于tensor张量切换维度a.permute()方法
pytorch中对于tensor张量切换维度a.permute()方法
2022-09-19 22:27:41 329
原创 09-python 复制文件 n.txt 到指定目录 c:\users\desktop
python 复制文件 n.txt 到指定目录 c:\users\desktop
2022-08-11 14:38:51 476
原创 Qml-跨窗口拖动图片、物体
跨窗口,鼠标id仍然是蒙层的id,这样一样会被遮挡。最后发现,当我们按下的时候,可以手动设置蒙层的mouseArea的大小区域,使得不被干扰,当释放的时候,又可以设置他的区域,甚至乎设置为0....
2022-07-20 16:53:29 1114 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人