自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 收藏
  • 关注

原创 算法-bfs-八数码

将每一串字符都想象成一个点,已知起点和终点,每一次更新相邻的节点,采用bfs得到到达终点的最短路径。isValid函数判断每次x移动变换是否合理(x,y>=0&&x,y<3);dfs函数返回值为-1,代表该情况无解(无论怎么变化都无法成为最终的效果)。设x在字符串中的下标为k,则x在3*3矩阵中的坐标为(k/3,k%3);来存储每种字符串对应情况需要移动的次数。存储当前遍历及下一步遍历的情况。

2024-07-27 17:52:36 263

原创 算法-BFS搜索

每次的节点寻找其上下左右四个方向可以继续前进的点(这里在过程中会发生两个点循环的情况,不过不影响结果,有兴趣可以优化一下)。终点判断为(n-1,m-1),因为我的遍历是从(0,0)点开始的。函数判断每次寻找的上下左右四个坐标是否合规。表示在遍历过程中当前距离的所以节点坐标。比较标准的暴力搜索+空间换时间的策略。表示遍历过程中某点到起点的距离。

2024-07-26 21:01:56 126

原创 算法-DFS搜索

如图示采样,“ \ ”方向的对角线横标和纵标之差值保持一致,“ / ”方向对角线横标和纵标之和值保持一致。故代码中使用布尔数组来表示某一对角线的情况,r-i+n取正。第r行,第i列能不能放棋子:用数组dg udg cor 分别表示:点对应的两个斜线以及列上是否有皇后。cor[i]表示第i列上有没有棋子。如果 r行i列的对角线,反对角线上都没有棋子。udg[n - i + r]表示 r行i列处,所在的反对角线上有没有棋子。dg[i + r] 表示 r行i列处,所在的对角线上有没有棋子。

2024-07-23 22:22:24 237

原创 算法-KMP字符串匹配

next[i] 就是使子串 s[0…i] 有最长相等前后缀的前缀的最后一位的下标。总体来说解next数组和模板串匹配的过程很相似,触类旁通。

2024-07-23 22:06:37 307

原创 算法-散列表

拉链法:p表示哈希表头,e表示结点值,ne模拟指针,idex表示存储下标。时间换空间,模仿十进制的拆分。

2023-09-04 20:39:07 64

原创 算法-Tire树

总体思路为将待求数二进制形式存储在Tire树中,通过树型数据结构快速求取某数的最佳匹配值,最后求与运算。重在理解tire树的物理结构和逻辑结构。index相当于一个分配器,只有需要插入新结点时才会增加。ps:不是放在这章里真的一点想不到这个方法。为什么son取M=N*31。

2023-08-27 21:26:57 79

原创 算法-堆排序

因为建小堆可以选出最小的数即根节点,我们将每次建好的小堆的最后一个叶子节点和根节点进行交换,交换后不把最后一个数看作堆里的数据,此时根的左右子树依旧是大堆,然后我们再用向下调整算法选出次小的如此循环直到堆里剩一个数结束。down操作中,u负责存储原数,比较时要以用u为准,t在比较过程中可能被修改。堆的物理结构为数组,实现时为了方便计算,从下标1开始存储。

2023-08-14 19:35:18 73

原创 游戏开发工程

UObject和AActor

2023-08-11 20:46:35 57

原创 算法-单调队列

找最小值:建立单调队列,并保持队列长度小于等于设定的K值,每次读入新值时,如果新值大于队尾值则再保证队列长度的情况下往队尾插值,如果新值小于队尾值,则队尾退至最小于新值的合法位置(地址大于等于队头)。用队列模拟窗口,在窗口中暴力搜索最小值/最大值,时间复杂度为O(n^2)初始值r=-1的原因首次写入时单调队列下标为0,统一规范。代码实现注意点:在窗口容满时才开始输出,r- -和r++书写为队列规范。

2023-08-11 20:19:35 47

原创 算法-单调栈

用单调递增栈,当该元素可以入栈的时候,栈顶元素就是它左侧第一个比它小的元素。注意此处使用的单调栈从下标为1开始存储,栈顶为0说明当前栈为空。

2023-08-11 12:09:04 35

原创 算法-链表

不使用结构体&指针链表的原因:new函数效率很低,在输入大量数据时会导致超时。使用index 0和1 作为双链表的两端点,读入参数的index初始值为2。注意双链表不仅要更改左值,还要更改另一个方向的值。add函数利用双链表的特性简化为传参实现不同功能。故使用两个数组模拟链表在内存中的运行逻辑。其余用数组模拟指针地址来模拟链表。

2023-08-10 20:06:36 29

原创 算法-区间合并

注意add读完后要将最后一组st,ed存入res。

2023-08-10 11:51:44 34

原创 算法-区间和

注意点:代码中对容器进行排序去重操作是针对查询坐标的重复,而非数轴上加减法的操作。利用前缀和算法改进后可通过检测。

2023-08-09 18:53:28 37

原创 算法-双指针

依然是空间换时间,设立一个temp数组用于存储在当前最大序列种每个元素的个数,当检查到新加入元素在当前最大子序列中的个数(temp[a[i]])大于1时,将 j向右移动至重复元素之右。则B[j+1]到B[m]不可能与当前A[i]匹配。

2023-08-08 11:59:50 41

原创 算法-差分

前缀和的逆运算,总体思路为使An做Bn的前缀和。

2023-08-07 18:15:30 27

原创 算法-前缀和

全部和:S【i】【j】=S【i-1】【j】+S【i】【j-1】-S【i-1】【j-1】+a【i】【j】空间换时间,添加一个前N项和的数组。将S0设为0,便于之后统一公式。

2023-08-07 11:31:33 35

原创 算法-高精度

将超长整数倒序放入vector(利于进位变换),模拟人手算,创建一个坑整数,用于存储每次两数相同位相加后的结果,小于10的部分放在当前位,大于10取余加到上一位。数存储方式与上题相同,t作为工具变量存储借位,(t+10)%10借位补算和补算纠错,而t本身存储的负值不变,循环结束后使用while循环去除前导0;代码实现时要注意的是,所得的vector C为解的反vector 需要对其reverse ,然后去解的前导零。长整数的每位分别与短数相乘,大于十的部分进位,小于十的部分留下。

2023-07-24 10:33:10 40

原创 操作系统12-磁盘

磁盘结构磁盘调度算法先来先服务算法(FCFS)最短寻找时间优先算法(SSTF)扫描算法 (SCAN)扫描算法优化LOOK调度算法循环扫描算法(C-SCAN)C-LOOK调度算法减少磁盘延迟时间的方法交替编号错位命名磁盘管理磁盘初始化引导块坏块管理固态硬盘SSD

2023-07-23 20:54:06 35

原创 操作系统-11-硬件管理

程序直接控制方式--轮询 中断驱动方式 DMA方式 通道控制方式 用户层软件 设备独立性软件 设备驱动程序中断处理程序

2023-07-23 18:39:47 43

原创 算法-浮点数二分

解题思路:利用二分查找,注意点为若想提高精确度,可将初始区间选择为max(1,x)

2023-07-20 17:08:18 39

原创 算法-整数二分

此处不令r=mid-1的原因:如过按照上一个二分的写法,循环判断条件还是l

2023-07-20 16:31:04 41

原创 操作系统-10文件操作

软链接可理解为快捷方式。

2023-07-19 20:09:34 42

原创 算法-ACwing788-逆序对数量

利用归并排序,在归并时算得逆序对数量。

2023-07-19 12:44:11 65

原创 操作系统-10-文件物理结构

2023-07-18 22:06:49 49 1

原创 操作系统-9-文件管理

有结构文件。

2023-07-18 18:39:54 36 1

原创 算法-1-排序

3、递归处理左右两边。2.递归排序left,right。

2023-07-17 20:51:06 43 1

原创 虚幻C++-限制角色上下旋转视角范围

其基本的实现逻辑是:判定当前Pitch值和移动方向的以决定玩家是否可操控上下旋转视角。只可进行迷途知返,不可一错再错。是两个合法区可随意操作。

2023-07-11 19:17:36 99

原创 操作系统-7-管程,死锁

一种高级同步机制类似于封装好的一个类。

2023-07-08 17:23:16 33 1

原创 操作系统-6-信号量机制例题

关于互斥信号量的多种情况。先让自己拿妥了再让别人拿。

2023-07-06 22:17:28 116 1

原创 操作系统-5-进程同步/互斥

与TSL逻辑基本相同。进程互斥中的信号量机制。信号量机制实现进程同步。

2023-07-06 21:03:34 65 1

原创 操作系统-4-调度算法

多级反馈队列调度算法。

2023-07-06 16:55:42 186 1

原创 操作系统-3-处理机调度

调度概念和层次挂起状态七状态模型。

2023-07-05 21:22:22 68 1

原创 操作系统-2-进程

线程是一个基本的CPU执行单元,也是程序执行流的最小单位。运行环境存入PCB(实现进程并发执行)进程间通信。进程状态转换丁字裤模型。

2023-07-05 19:43:12 97 1

原创 操作系统1-体系结构

主要特征:外核负责给用户进程分配不虚拟不抽象的硬件资源(直接物理地址)

2023-07-04 18:06:45 30

原创 算法设计与分析-斐波那契数列

2023-05-05 20:27:15 61

原创 UE4-ACT基础

萌新的动作类学习笔记

2023-02-11 22:56:08 105

原创 UE4-双人分屏

双人游戏

2023-02-09 17:29:24 948

原创 UE4-背景音乐

淡入淡出(Fade in ,Fade out)适用于单次声音播放,没有接口设置。数组使用:Get a copy。

2023-02-08 21:33:58 280

原创 机器学习-入门笔记(1)

李宏毅2021/2022春机器学习课程第一节笔记

2023-02-05 19:17:36 71

原创 UE4动画基础

基本人物角色建立

2023-02-05 17:28:37 116

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除