- 博客(7)
- 收藏
- 关注
原创 C#删除链表中有重复的元素
摘要:C#中使用哑节点和双指针技术删除链表中所有重复元素的方法。定义链表节点类后,通过创建哑节点简化处理流程,使用pre指针标记已处理部分末尾,cur指针遍历检测重复节点。内层循环跳过连续重复节点,根据检测结果决定是否删除节点。该方法时间复杂度O(n),空间复杂度O(1),示例演示了将1->2->2->3->3->4处理后变为1->4的过程。
2025-09-02 01:18:54
358
原创 在Unity中判断点是否在扇形区域内
本文介绍了Unity中判断点是否在扇形区域的方法,主要用于游戏开发中的视野检测和技能范围判定。核心原理是检查点与圆心的距离不超过半径,且连线与扇形中轴线的夹角小于半角。文章提供了完整的实现代码,包括扇形可视化功能,并给出了优化版本避免使用计算量大的反三角函数。注意事项包括平面调整、动态扇形处理和性能优化建议。该方法适用于敌人AI、技能系统等常见游戏场景。
2025-09-02 01:10:32
317
原创 快速掌握Unity内的点乘和叉乘
【10分钟掌握游戏开发中的点乘与叉乘】 点乘和叉乘是游戏开发中的核心数学工具。点乘(Dot Product)衡量两个向量的方向相似度,输出标量值:当结果>0时向量同向,=0时垂直,<0时反向。在Unity中常用于判断物体相对位置(前后关系)和计算光照强度。叉乘(Cross Product)则生成垂直于两个输入向量的新向量,遵循左手定则,输出向量值。主要用途包括:计算平面法线、确定旋转轴、判断物体左右位置。关键区别:点乘关注角度关系,叉乘生成垂直方向。通过Vector3.Dot/Cross可快速实
2025-09-02 00:57:30
629
原创 求二叉树深度的C#实现
该C#程序演示了计算二叉树深度的两种方法:递归法和迭代法。程序首先定义了二叉树节点类TreeNode,然后提供了递归方法GetDepthRecursive(通过左右子树比较)和迭代方法GetDepthIterative(使用队列层次遍历)来计算深度。测试部分创建了一个示例二叉树,比较两种方法结果,并打印树结构进行验证。两种方法的时间复杂度均为O(n),空间复杂度在最坏情况下也是O(n)。程序完整展示了二叉树深度计算的核心算法和实现细节。
2025-09-02 00:42:13
396
原创 判断是否是完全二叉树的C#实现
本文介绍了完全二叉树的判断方法。通过层次遍历算法,使用队列检查节点是否满足完全二叉树的特性:遇到第一个空节点后,后续节点必须全为空。文章提供了C#实现代码,包含TreeNode类定义、核心判断逻辑和测试用例。算法时间复杂度为O(n),空间复杂度O(n)。完全二叉树的特点是除最后一层外各层节点数达到最大,且最后一层节点集中在左侧,常用于堆结构实现。
2025-09-02 00:40:15
119
原创 vs新加的文件忘记编译后不在vs右侧资源目录里显示了,但是文件还在,怎么包含回去
在Visual Studio中,通过点击"解决方案资源管理器"顶部的"显示所有文件"按钮(图标为两个重叠文档),可查看未包含的项目文件和文件夹。找到目标灰色文件/文件夹后,右键选择"包含在项目中"即可将其纳入项目结构,文件颜色会变为正常。
2025-08-31 13:11:42
525
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人