<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[xx_xb的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/xx_xb</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; xx_xb]]></copyright><item><title><![CDATA[OpenPCDet框架下模型预测结果解读]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/146489581</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/146489581</guid><author>xx_xb</author><pubDate>Mon, 24 Mar 2025 23:54:45 +0800</pubDate><description><![CDATA[在 OpenPCDet  中，每个模型的推理结果通常是，其中包含与 3D 检测任务相关的信息。不同模型的输出结构可能略有不同，但一般来说，模型输出通常包含以下几个关键字段：以下给一段。]]></description><category></category></item><item><title><![CDATA[OpenPCDet详细部署与复现]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/146416870</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/146416870</guid><author>xx_xb</author><pubDate>Fri, 21 Mar 2025 11:35:54 +0800</pubDate><description><![CDATA[OpenPCDet是一个用于3D目标检测的开源工具箱，它提供了多种数据集的加载器，支持多种模型，并且易于扩展。]]></description><category></category></item><item><title><![CDATA[虚幻引擎-设置UI自适应屏幕大小]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/142670828</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/142670828</guid><author>xx_xb</author><pubDate>Tue, 01 Oct 2024 15:00:09 +0800</pubDate><description><![CDATA[在游戏中，如果想实现不同分辨率下，都可以支持当前的UI界面布局，都需要用到锚点功能。‌‌ 锚点的作用是确保UI元素在屏幕缩放或形变时保持相对位置不变。在虚幻引擎中，锚点可以理解为将子物体“挂”在父物体上的点。当父物体的位置或大小发生变化时，子物体的位置会相应地调整，保持它们之间的相对关系不变。锚点的位置可以在屏幕的任意角落，通常用于自适应屏幕尺寸和保持布局的稳定性‌12。]]></description><category></category></item><item><title><![CDATA[算法-DFS-树形DP]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/140830785</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/140830785</guid><author>xx_xb</author><pubDate>Wed, 31 Jul 2024 19:42:16 +0800</pubDate><description><![CDATA[比较标准的深搜，难点主要在题目的理解，通俗的说就是要找到一个树结构中的点，使之在去掉该点后剩余数的结构最均等（剩余连接节点的最大值最小）。//h[u]的值是下标，数值为u节点对应邻接表的头节点的下标。//ne[i]的值是下标，是下标为i的节点的next节点的下标。使用代码实现需要一个数组存储数值、一个数组存储临接坐标、一个数组存储头节点坐标。//e[i]的值是节点值，是下标为i节点的具体值。ans存储的是历史所有节点分割得到size的最小值。size为当前节点分割后，剩余连接块的最大节点数。]]></description><category></category></item><item><title><![CDATA[算法-bfs-八数码]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/140738583</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/140738583</guid><author>xx_xb</author><pubDate>Sat, 27 Jul 2024 17:52:36 +0800</pubDate><description><![CDATA[将每一串字符都想象成一个点，已知起点和终点,每一次更新相邻的节点，采用bfs得到到达终点的最短路径。isValid函数判断每次x移动变换是否合理(x,y>=0&&x,y<3);dfs函数返回值为-1，代表该情况无解（无论怎么变化都无法成为最终的效果）。设x在字符串中的下标为k,则x在3*3矩阵中的坐标为（k/3,k%3）;来存储每种字符串对应情况需要移动的次数。存储当前遍历及下一步遍历的情况。]]></description><category></category></item><item><title><![CDATA[算法-BFS搜索]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/140724484</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/140724484</guid><author>xx_xb</author><pubDate>Fri, 26 Jul 2024 21:01:56 +0800</pubDate><description><![CDATA[每次的节点寻找其上下左右四个方向可以继续前进的点（这里在过程中会发生两个点循环的情况，不过不影响结果，有兴趣可以优化一下）。终点判断为(n-1，m-1),因为我的遍历是从（0，0）点开始的。函数判断每次寻找的上下左右四个坐标是否合规。表示在遍历过程中当前距离的所以节点坐标。比较标准的暴力搜索+空间换时间的策略。表示遍历过程中某点到起点的距离。]]></description><category></category></item><item><title><![CDATA[算法-DFS搜索]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/140647359</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/140647359</guid><author>xx_xb</author><pubDate>Tue, 23 Jul 2024 22:22:24 +0800</pubDate><description><![CDATA[如图示采样，“ \ ”方向的对角线横标和纵标之差值保持一致，“ / ”方向对角线横标和纵标之和值保持一致。故代码中使用布尔数组来表示某一对角线的情况，r-i+n取正。第r行，第i列能不能放棋子：用数组dg udg cor 分别表示：点对应的两个斜线以及列上是否有皇后。cor[i]表示第i列上有没有棋子。如果 r行i列的对角线，反对角线上都没有棋子。udg[n - i + r]表示 r行i列处，所在的反对角线上有没有棋子。dg[i + r] 表示 r行i列处，所在的对角线上有没有棋子。]]></description><category></category></item><item><title><![CDATA[算法-KMP字符串匹配]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/132514862</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/132514862</guid><author>xx_xb</author><pubDate>Tue, 23 Jul 2024 22:06:37 +0800</pubDate><description><![CDATA[next[i] 就是使子串 s[0…i] 有最长相等前后缀的前缀的最后一位的下标。总体来说解next数组和模板串匹配的过程很相似，触类旁通。]]></description><category></category></item><item><title><![CDATA[算法-散列表]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/132666320</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/132666320</guid><author>xx_xb</author><pubDate>Mon, 04 Sep 2023 20:39:07 +0800</pubDate><description><![CDATA[拉链法：p表示哈希表头，e表示结点值，ne模拟指针，idex表示存储下标。时间换空间，模仿十进制的拆分。]]></description><category></category></item><item><title><![CDATA[算法-Tire树]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/132516817</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/132516817</guid><author>xx_xb</author><pubDate>Sun, 27 Aug 2023 21:26:57 +0800</pubDate><description><![CDATA[总体思路为将待求数二进制形式存储在Tire树中，通过树型数据结构快速求取某数的最佳匹配值，最后求与运算。重在理解tire树的物理结构和逻辑结构。index相当于一个分配器，只有需要插入新结点时才会增加。ps:不是放在这章里真的一点想不到这个方法。为什么son取M=N*31。]]></description><category></category></item><item><title><![CDATA[算法-堆排序]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/132282483</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/132282483</guid><author>xx_xb</author><pubDate>Mon, 14 Aug 2023 19:35:18 +0800</pubDate><description><![CDATA[因为建小堆可以选出最小的数即根节点，我们将每次建好的小堆的最后一个叶子节点和根节点进行交换，交换后不把最后一个数看作堆里的数据，此时根的左右子树依旧是大堆，然后我们再用向下调整算法选出次小的如此循环直到堆里剩一个数结束。down操作中，u负责存储原数,比较时要以用u为准，t在比较过程中可能被修改。堆的物理结构为数组，实现时为了方便计算，从下标1开始存储。]]></description><category></category></item><item><title><![CDATA[算法-单调队列]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/132238052</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/132238052</guid><author>xx_xb</author><pubDate>Fri, 11 Aug 2023 20:19:35 +0800</pubDate><description><![CDATA[找最小值：建立单调队列，并保持队列长度小于等于设定的K值，每次读入新值时，如果新值大于队尾值则再保证队列长度的情况下往队尾插值，如果新值小于队尾值，则队尾退至最小于新值的合法位置（地址大于等于队头）。用队列模拟窗口，在窗口中暴力搜索最小值/最大值，时间复杂度为O(n^2)初始值r=-1的原因首次写入时单调队列下标为0，统一规范。代码实现注意点：在窗口容满时才开始输出，r- -和r++书写为队列规范。]]></description><category></category></item><item><title><![CDATA[算法-单调栈]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/132228375</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/132228375</guid><author>xx_xb</author><pubDate>Fri, 11 Aug 2023 12:09:04 +0800</pubDate><description><![CDATA[用单调递增栈，当该元素可以入栈的时候，栈顶元素就是它左侧第一个比它小的元素。注意此处使用的单调栈从下标为1开始存储，栈顶为0说明当前栈为空。]]></description><category></category></item><item><title><![CDATA[算法-链表]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/132214805</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/132214805</guid><author>xx_xb</author><pubDate>Thu, 10 Aug 2023 20:06:36 +0800</pubDate><description><![CDATA[不使用结构体&指针链表的原因：new函数效率很低，在输入大量数据时会导致超时。使用index 0和1 作为双链表的两端点，读入参数的index初始值为2。注意双链表不仅要更改左值，还要更改另一个方向的值。add函数利用双链表的特性简化为传参实现不同功能。故使用两个数组模拟链表在内存中的运行逻辑。其余用数组模拟指针地址来模拟链表。]]></description><category></category></item><item><title><![CDATA[算法-区间合并]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/132205260</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/132205260</guid><author>xx_xb</author><pubDate>Thu, 10 Aug 2023 11:51:44 +0800</pubDate><description><![CDATA[注意add读完后要将最后一组st,ed存入res。]]></description><category></category></item><item><title><![CDATA[算法-区间和]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/132193634</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/132193634</guid><author>xx_xb</author><pubDate>Wed, 09 Aug 2023 18:53:28 +0800</pubDate><description><![CDATA[注意点：代码中对容器进行排序去重操作是针对查询坐标的重复，而非数轴上加减法的操作。利用前缀和算法改进后可通过检测。]]></description><category></category></item><item><title><![CDATA[算法-双指针]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/132161416</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/132161416</guid><author>xx_xb</author><pubDate>Tue, 08 Aug 2023 11:59:50 +0800</pubDate><description><![CDATA[依然是空间换时间，设立一个temp数组用于存储在当前最大序列种每个元素的个数，当检查到新加入元素在当前最大子序列中的个数（temp[a[i]]）大于1时，将 j向右移动至重复元素之右。则B[j+1]到B[m]不可能与当前A[i]匹配。]]></description><category></category></item><item><title><![CDATA[算法-差分]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/132149576</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/132149576</guid><author>xx_xb</author><pubDate>Mon, 07 Aug 2023 18:15:30 +0800</pubDate><description><![CDATA[前缀和的逆运算，总体思路为使An做Bn的前缀和。]]></description><category></category></item><item><title><![CDATA[算法-前缀和]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/132140837</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/132140837</guid><author>xx_xb</author><pubDate>Mon, 07 Aug 2023 11:31:33 +0800</pubDate><description><![CDATA[全部和：S【i】【j】=S【i-1】【j】+S【i】【j-1】-S【i-1】【j-1】+a【i】【j】空间换时间，添加一个前N项和的数组。将S0设为0，便于之后统一公式。]]></description><category></category></item><item><title><![CDATA[算法-高精度]]></title><link>https://blog.youkuaiyun.com/xx_xb/article/details/131858406</link><guid>https://blog.youkuaiyun.com/xx_xb/article/details/131858406</guid><author>xx_xb</author><pubDate>Mon, 24 Jul 2023 10:33:10 +0800</pubDate><description><![CDATA[将超长整数倒序放入vector（利于进位变换），模拟人手算，创建一个坑整数，用于存储每次两数相同位相加后的结果，小于10的部分放在当前位，大于10取余加到上一位。数存储方式与上题相同，t作为工具变量存储借位，（t+10）%10借位补算和补算纠错，而t本身存储的负值不变，循环结束后使用while循环去除前导0；代码实现时要注意的是，所得的vector C为解的反vector 需要对其reverse ，然后去解的前导零。长整数的每位分别与短数相乘，大于十的部分进位，小于十的部分留下。]]></description><category></category></item></channel></rss>