贪心算法 0. 贪心基础0.1 贪心理论入门在贪心系列开篇词关于贪心算法,你该了解这些! (opens new window)中,我们就讲解了大家对贪心的普遍疑惑。 什么是贪心算法:如果找出局部最优并可以推出全局最优,就是贪心,如果局部最优都没找出来,就不是贪心。 贪心算法的套路:贪心无套路,也没有框架之类的,需要多看多练培养感觉才能想到贪心的思路。 贪心算法的步骤:贪心算法一般分为如下三步: 将问题分解 2021-10-03 算法刷题 算法
数据结构-堆 1. 堆的简介堆的常用方法: 构建优先队列 支持堆排序堆排序 快速找出一个集合中的最小值(或者最大值) 堆分为两种: 最大堆(大顶堆)父节点的值比每一个子节点的值都要大根节点总是最大值可以用于降序排序 最小堆(小顶堆)父节点的值比每一个子节点的值都要小根节点总是最小值可用于升序排序 例子: 这是一个最大堆,,因为每一个父节点的值都比其子节点要大。10 比 7 和 2 都大。7 比 5 和 2021-10-01 算法刷题 算法 数据结构
排序算法 0. 概述0.1 算法分类十种常见排序算法可以分为两大类: 比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序。 非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此也称为线性时间非比较类排序。 0.2 算法复杂度 0.3 相关概念 稳定:如果a原本在b前面,而a=b,排序之 2021-09-30 算法刷题 算法
动态规划 0. 动态规划理论基础0.1 动态规划理论入门定义:动态规划,英文:Dynamic Programming,简称DP。如果某一问题有很多重叠子问题,使用动态规划是最有效的。 与贪心算法的区别: 动态规划:每一个状态一定是由上一个状态推导出来的 贪心算法:没有状态推导,从局部直接选最优的 例如:有N件物品和一个最多能背重量为W 的背包。第i件物品的重量是weight[i],得到的价值是value 2021-09-15 算法刷题 算法
DinoParkour开发文档 DinoParkour开发文档项目信息:项目负责人:买烤麸烤饼程序:买烤麸烤饼美工:买烤麸烤饼,一周音效:洛一项目开发周期:2021.9.1- 2021.9.10 版本信息: v1.0 完成小恐龙跑酷的基本玩法 v1.5 将操作按钮放到了屏幕两侧 解决了摄像头无法归位的BUG 重置了所有碰撞器,精细化了碰撞检测 增加了全新的翼龙模式与全新的BUG v2.0 降低了翼龙的敏感度 修复了 2021-09-11 项目开发文档 项目开发文档
UGUI详解-事件接口 1. 简介UGUI 系统虽然提供了很多封装好的组件,但是要实现一些特定的功能还是显得非常有限,这时候就需要使用事件接口来完成UI功能的实现。 比如我们想实现鼠标移动到图片上时自动显示图片的文字介绍,一般思路会想到写个射线来检测。但其实这样的检测UGUI已经替我们完成了,我们只需要实现检测到目标对象后所要执行的代码即可! 事件系统:UnityEngine.EventSystems; UI 组件都是基 2021-09-10 Unity UGUI Unity UGUI 事件接口
Unity-动画-回调函数接口 1. 简介当你想在状态机的某个状态执行中干些什么的时候(增加状态机行为)比如:播放音效,添加粒子特效,增加逻辑代码等等操作。那么就可以试一试Unity封装好的回调函数接口:StateMachineBehaviour 想要添加(State machine behaviours)状态机行为到状态或子状态机,可以选中某个状态后在inspector中的Add Behaviour按钮。 2. 使用该动画回调 2021-09-07 Unity 动画 动画 Unity 接口
Unity-射线检测 1. 简介射线是3D世界中一个点向一个方向发射的一条无终点的线。在发射的轨迹中,一旦与其他物体发生碰撞,它就会停止。 在游戏中,射线检测可以有如下用途: 检测光标位置的三维物体 检测角色前面的物体(自动开门) 从空中向下检测(凹凸不平的地形的瞬移) 测量距离(激光测距) 等等,可以说是相当重要了。 2. Ray射线2.1 定义要想使用射线检测,就要先定义一条射线。而Ray就是Unity提供的一 2021-09-04 Unity 基础 常用操作 Unity基础 射线检测 总结
设计模式-状态模式 1. 简介当对象可能会根据不同的情况做出不同的行为,我们就把这种对象称为有状态的对象,而把影响对象行为的一个或多个动态变化的属性称为状态。 当有状态的对象与外部事件产生互动时,其内部状态就会发生改变,从而使其行为也发生改变。 对这种有状态的对象编程有两种解决方法: 传统的解决方案:使用 if-else 或 switch-case 语句来做状态判断,再进行不同情况的处理。但是显然这种做法存在弊端:条 2021-09-01 设计模式 设计模式
剑指offer 剑指offer03. 找出数组中重复的数字21-7-15 描述:找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。 示例:输入: [2, 3, 1, 0, 2, 5, 3]输出: 2 或 3限制: 2 <= n < 2021-07-15 算法刷题 算法 剑指offer