- 博客(24)
- 收藏
- 关注
原创 C++程序设计:自定义类作为Key的unordered_map编程技法
自定义类作为Key的unordered_map编程技法如何用自定义类型作为unordered_map的key呢?在上一节,我们讲到:https://blog.youkuaiyun.com/qq_44274276/article/details/117912758?spm=1001.2014.3001.5501这是自定义类型作为map的Key的编程技法与原理。我们这里先只谈技法,原理下次讲哈希表再去探讨。分析作为unordered_map的Key的条件联想标记数组算法,其实标记数组就是一种哈希,只是那是一
2025-09-21 15:40:59
671
3
原创 单调栈与单调队列初步应用
一、单调栈能解决的问题:单调栈适用于解决以某个值为最大值(最小值)为边界的最大区间问题(划重点)使用的算法:如果需要求解以某个值为最大值(最小值)为边界的最大区间,我们可以设想,构造一个单调递减(增)的栈,这样做的理由是单调递减(增)说明一开始的值是栈内的最大值(最小值),如果我需要求某一个值作为边界的最大区间,只需要以这个值为右边界(左边界),然后放心大胆的向左(右)拓展,直到扩展到栈的...
2025-09-21 15:39:39
857
原创 研究生高级数据结构2——搜索与搜索树
研究生高级数据结构训练21、你算老几啊?算法分析与设计这题考察的是二分查找找不到的情况。在二分查找无法找到targettargettarget的时候,会返回距离targettargettarget最近的,且比它大的那个元素,比如下面的序列:Array:1 3 5 7 9Array:1 \,\,3\,\ 5\,\ 7\,\ 9Array:13 5 7 9二分的区间是:[0,5)[0,5)[0,5),也就是l=0,r=5l=0,
2025-09-21 12:56:54
914
原创 二叉树与完全二叉树计算节点数
二叉树与完全二叉树计算节点数这是一个刷题博客,记录leetcode上关于二叉树栏目的刷题题解。二叉树的节点数(leetcode 222)题目描述:完全二叉树的节点个数算法分析与设计思路 1如果没有 “完全二叉树” 这个条件,那么就用一般的,二叉树计算节点数的方法来做。考虑深度优先遍历,每一颗二叉树都可以由其根节点、左子树、右子树组成。考虑这个递归模式,从根节点开始计算,然后每一轮都带上该子树的根节点,直到叶子节点的时候,就只有一个节点了!此时,节点个数就计算完成!思路 2完全二叉树的概
2025-09-21 12:55:37
1391
1
原创 二叉树的创建&遍历1:创建二叉树
二叉树的创建&遍历1:创建二叉树谈二叉树,如果二叉树都没有正确的创建出来,那岂不是纸上谈兵!!创建方法1:由括号表达式创建括号表达式:表示方法:1.括号:括号内的东西是括号前的元素的孩子2.逗号:逗号是为了区分左右孩子算法分析:给出一个如上的括号表达式:A(B(D(,G)),(E,F)),再利用栈这个数据结构,分析一下:扫描整个括号表示的字符串,这个字符串中只有四种字符...
2025-09-21 12:51:41
987
原创 【项目记录|工程】关于复现baseline算力资源不足的问题及解决方案
注意用torchrun运行程序(类似于MPI的mpirun),会给系统环境默认配置上rank和world_size,不熟悉这个概念的朋友可以去看我写的MPI并行计算的博客。这告诉我们,如果baseline需要的effective batch size为4,而你用了两张卡并行,那么此时你需要把yaml配置文件当中的batch size改成2,这样才能导致最终有效的batch size是。如果连batch size为1时都跑不起来,学学张量并行吧,需要把模型部署在多卡上,然后数据也在多卡上,跑并行训练。
2025-07-10 00:00:08
928
原创 MPI编程案例01-广播通信(基础版)
IN/OUT buffer 通信消息缓冲区的起始地址(可变)IN count 通信消息缓冲区中的数据个数(整型)IN datatype 通信消息缓冲区中的数据类型(句柄)IN root 发送广播的根的序列号(整型)IN comm 通信子(句柄)注意看,这里的buffer是IN和OUT都兼备的参数,这意味着,既可以通过buffer传入数据到信道(缓存),又可以通过buffer从信道(缓存)中读取数据。
2025-03-16 22:14:43
978
原创 蓝桥杯训练1:搜索专题真题(一道树的直径比较有趣)
第一题:带分数训练题1:带分数我的AC代码:#include <iostream>#include <algorithm>using namespace std;int GetNum(int a[], int begin, int end) { int num = 0; for (int i = begin; i < end; ++i) num ...
2024-11-05 20:35:44
677
1
原创 ACM-ICPC寒假算法训练1:搜索专题 黑白皇后问题(进一步思考深度遍历)
2*n皇后问题#define _CRT_SECURE_NO_WARNINGS#include <cstdio>const int maxn = 10;int n, ans, mp[maxn][maxn];int col_black[maxn], diag1_black[2 * maxn], diag2_black[2 * maxn];int col_white[maxn]...
2024-11-05 20:35:26
496
1
原创 ACM-ICPC寒假算法训练4:图论1(图的遍历)
题1:封锁阳光大学:洛谷1330算法分析:首先这个图,可能不连通,我们针对其中一个联通分量来看:如果我们在一个点放下了一只河蟹,那么那个点与之邻接的所有点都不可以再放河蟹。那么对于一个点,我们就有两个策略:放河蟹与不放河蟹。这也就对应了一个节点的两个状态:0(不放)或者1(放)。我们可以以这个联通分量的任意一个点作为深度搜索的起点,然后进行深度遍历,我们遍历的目的其实只是为了检测在图被 0/1...
2024-11-05 20:35:05
589
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅