avatar
文章
81
标签
33
分类
12

首页
标签
分类
简历
mao的博客
搜索
首页
标签
分类
简历

mao的博客

题型总结——leetcode 119 杨辉三角
发表于2024-09-07|题目
119. 杨辉三角 II题目 代码12345678910111213141516vector<int> getRow(int rowIndex) { vector<int> res; //杨辉三角核心代码 for (int i = 0; i <= rowIndex; i++) { res.resize(i + 1, 1); for (int j = i - 1; j > 0; j--) { res[j] += res[j - 1]; } } return res; } 记忆双重for循环中的杨辉三角核心代码
题型总结——leetcode 520 检测大写字母
发表于2024-09-07|题目
520. 检测大写字母问题 解法两种解法 自己第一次写的 03XF的 自己的123456789101112131415161718192021222324252627282930if (word.length() == 0 || word.length() == 1) return true; bool flag1 = false; //检查首位是不是大写的 if (toupper(word[0]) == word[0]) { flag1 = true; } //从第二个开始,后面都需要相同 bool flag2 = false, flag3 = false; //flag2是判断大写的,flag3是判断小写的 for (int i = 1; i < word.length(); i++) { flag2 = flag2 || toupper(word[i]) == word[i] ? 1 : 0; flag3 = flag3 || tolower(word[i]) == word[i] ? 1 : 0; } if ...
githug首次ssh访问注意
发表于2024-09-06|经验
github首次ssh访问注意CA证书问题1git config http.sslVerify false 暂时关闭CA证书检查 同样可以安装 TortoiseGit , 进入到设置中按照以上步骤设置,在右侧文本编辑器中添加红框中的内容 或者也可以先禁止CA证书检查,然后再启用,最后在执行以上操作 github端口问题 第一次上传大概率会有端口问题,因此在C盘的用户目录下的.ssh文件夹内,新建一个config文件,并添加红框中的内容。 123Host github.com Hostname ssh.github.com Port 443
题型总结——leetcode 459 重复的字符串
发表于2024-09-06|题目
459. 重复的子字符串 该问题有有三种解法,第一种就是常见的枚举,双重for循环,时间复杂度通常不如人意,On2 第二种则是巧妙利用这种结构的特性进行处理 第三种是经典的KMP算法 枚举12345678910111213141516171819bool repeatedSubstringPattern(string s) { int n = s.size(); for (int i = 1; i * 2 <= n; ++i) { if (n % i == 0) { bool match = true; for (int j = i; j < n; ++j) { if (s[j] != s[j - i]) { match = false; break; ...
题型总结——leetcode 389 找不同
发表于2024-09-06|题目
389. 找不同四种解法求和reduce是在numeric头文件下的对容器进行累计操作的方法,默认是求和 1return (char)reduce(t.begin(), t.end()) - reduce(t.begin(),t.end()); 时间复杂度On,空间复杂度O1 排序12345678910111213ranges::sort(s); ranges::sort(t); int n = s.length(); for (int i = 0; i < n; i++) { if (s[i] != t[i]) { return s[i]; } } return t.back(); 时间复杂度OnlogN,空间复杂度O1 计数12345678910111213vector<int> cnt(26, 0); for (char ch: s) { cnt[ch - 'a']++; } for (char ch ...
题型总结——leetcode 67 二进制求和
发表于2024-09-05|题目
67. 二进制求和1234567891011121314151617181920212223242526string StringTopic::addBinary(string a, string b){ //模拟运算 string res; ranges::reverse(a); ranges::reverse(b); int n = max(a.length(), b.length()), carry = 0; for (int i = 0; i < n; i++) { carry += i < a.length() ? (a[i] == '1') : 0; carry += i < b.length() ? (b[i] == '1') : 0; res.push_back(carry % 2 ? '1' : '0'); carry /= 2; } if (carry) { res.push_back('1') ...
Unity组件——AI navigation
发表于2024-09-05|Unity
AI navigation基础 属性讲解Agent Radius:代理半径,决定了烘焙路面距离墙面的距离,当出现两堵墙距离过近导致没有路径出现的情况,可以适当调小该属性 Height:代理高度,限制代理对象的高度,调整数值可以让代理角色通过桥洞或者隧道等有高度限制的场景 Step Height:台阶高度,在这个高度范围内的 台阶 会生成烘焙路径 Max Slope:可以生成烘焙路径的斜坡最大倾斜角度 Generated Links自动生成外链 Drop Distance:下落高度 Jump Distance:跳跃距离 Component 属性讲解Nav Mesh Agent:自动寻路代理对象,需要自动寻路的添加该组件 Nav Mesh Obstacle:被其余系统驱动的移动物体,需要Agent主动避开 Nav Links NavMeshdifler NavMeshSurface 使用 在需要烘焙的游戏对象上添加以上组件,保持默认设置,点击有右下角的bake按钮就可以在该游戏对象上生成烘焙路径,Agent可以在该对象表面进行寻路操作 每次子对象的变动,都需要 ...
题型总结——leetcode 3174 清除数字
发表于2024-09-05|题目
3174. 清除数字这时一道简单的栈处理题目, 下面是一开始和直接使用栈的解决方式 123456789101112131415161718192021222324252627string Array::clearDigits(string s){ stack<char> sta; for (char c : s) { if (isdigit()) { sta.pop(); } else { sta.push(c); } } s = ""; while (!sta.empty()) { s += sta.top(); sta.pop(); } ranges::reverse(s); return s; } 以上方法虽然能解决问题,但是最后还需要对新建的栈进行处理,回顾栈的定义,可以使用以下代码 123456789string st;for (char c : s) { if (isdigit(c)) { ...
Unity组件——DotWeen
发表于2024-09-04|Unity
DotWeen入门实现效果 打击感 打字机 移动 缩放 代码实现引用命名空间 1using DG.Tweening; 打击感 12Camera.main.transform.DOShakePosition(2,3); //将摄像机按照指定的参数进行晃动 //前者是持续时间,单位是秒,后者是强度 打字机123Text text;text.DOText("要进行打字机变换文本内容",3);//对应的需要两个参数,第一个如内容所示,第二个参数代表的是第一个的内容需要在几秒内完成,单位是秒 移动1234Text text;text.transform.DOMove(new Vector2(1,1),3); //在3秒内从当前位置移动到指定位置text.transform.DOMove(new Vector2(1,1),3).From(); //在3秒内从指定位置回到当前位置 缩放1234567text.transform.DOScale(1,2); //在2秒内将缩放至从当前值变为1text.transform.DOScale(1,2).From(); ...
Unity组件——TimeLine
发表于2024-09-04|Unity
TimeLine创建 TimeLine是控制的本体,Singal是动画中某个指定对象的传递 如果需要将事件传递出去,场景中需要有加载有下图红框内组件的游戏对象,使用方式和Unity常规的事件系统触发一致, 1.选择游戏对象 2.选择方法 使用前需要在场景中准备Add有下图所以组件的游戏对象,具体操作可以是直接从assets中将一个创建好的Timeline直接拖拽到场景中准备好的空对象上去 常用轨道 如上图所示: activation Track是控制活跃性的,在轨道的指定片段内是有效的,具体使用案例是在播放CG的时候需要将屏幕从人物中移动开,这个时候可以将原本的Playercamera拖拽到Timeline的该轨道上,在指定的片段内才是活跃的 Animation Track是常规的Animation,需要追踪一个animator, audio Track是音效轨道 Control Track playable Track signal Track 事件轨道 代码控制12345678910111213using UnityEngine.Playables; // ...
1…567…9
avatar
mao
文章
81
标签
33
分类
12
Follow Me
公告
This is my Blog
最新文章
Unity打包后窗户化切换2025-01-11
InputSystem按键重绑定2025-01-06
Unity —— 2D,雨水2024-12-31
C++ 事件系统使用手册2024-12-26
游戏事件池实现解释文档2024-12-26
分类
  • Alogrithm1
  • C++5
  • UI技术1
  • Unity13
  • Unity2D4
  • UnityShader16
  • 图形接口1
  • 左神算法4
标签
功能 经验 栈 语言知识 物理 解法总结 Plugins 特性 OpenGl alogrithm AI 2D渲染 组件 UI 性能优化 特效 位运算 渲染 Unity UI 字符串 二分查找 C++ string C# 热更 数组 Unity 枚举 github Pixiv 题目 动态规划 lua
归档
  • 一月 20252
  • 十二月 202411
  • 十一月 202410
  • 十月 202410
  • 九月 202430
  • 八月 202413
  • 七月 20245
网站资讯
文章数目 :
81
本站访客数 :
本站总访问量 :
最后更新时间 :
©2020 - 2025 By mao
框架 Hexo|主题 Butterfly
搜索
数据库加载中