- 博客(13)
- 收藏
- 关注
原创 快速排序 Lua实现
Lua实现快速排序// 快排arr = {3,2,5,1,5,8,6,3,15,341,8,3,54,84,165,416,8541,145}n = #arrfunction QuickSort(arr,left,right) if(left < right) then center =Partition(arr,left,right) QuickSort(arr,left,center-1) QuickSort(arr,center+1,right) endend
2021-05-10 01:20:31
166
原创 什么是B+树?
B+树是为磁盘或其他直接存取的辅助存储设备而设计的一种平衡搜索树,很多朋友还不理解什么是B+树,下面就来为大家分享一下B+树到底怎么理解。概念 B+树是B树的一个升级版,相对于B树来说B+树更充分的利用了节点的空间,让查询速度更加稳定,其速度完全接近于二分法查找。规则 (1)B+跟B树不同B+树的非叶子节点不保存关键字记录的指针,只进行数据索引,这样使得B+树每个非叶子节点所能保存的关键字大大增加; (2)B+树叶子节点保存了父节点的所有关键字记录的指针,所有数据地址必须要到叶子节点才能获取到
2021-05-05 12:17:29
1588
原创 什么是B树?
定义B树是一种平衡的多分树,通常我们说m阶的B树,它必须满足如下条件:①每个节点最多只有m个子节点。②每个非叶子节点(除了根)具有至少⌈ m/2⌉子节点。③如果根不是叶节点,则根至少有两个子节点。④具有k个子节点的非叶节点包含k -1个键。⑤所有叶子都出现在同一水平,没有任何信息(高度一致)。什么是B树的阶 ? B树中一个节点的子节点数目的最大值,用m表示,假如最大值为10,则为10阶,如图所有节点中,节点【13,16,19】拥有的子节点数目最多,四个子节点(灰色节点),所以可以定义上
2021-05-05 12:04:53
530
原创 如何在Vs中调试Unity程序
(前排提示:VS2017在启动选项中可以看到"附加到Unity调试程序",但是在VS2019中需要到"调试(D)-附加到Unity调试程序")首先打开VS-工具(T)-获取工具和功能选中Unity开发组件安装打开Unity3D - EDit - preferences - External Tools - 选中Editor Attaching在Vs中打开要调试的程序,调试 - 附加到Unity调试程序,然后再Unity中运行,这样就可以调试你的程序啦。(注:我用的是vs2019,2019以前
2021-04-22 10:38:42
5808
原创 XML在C#与Unity3D中的运用
一、xml文件是什么? XML是指可扩展标记语言,英文:Extensible Markup Language的缩写。二、xml文件有什么用? 用来传输和存储数据,比如网络通信,本地配置文件等。三、xml文件长什么样?// XML示例<?xml version="1.0" encoding="UTF-8"?><root> <item ID="1"> <name>张三</name> <age>15</age
2021-04-21 18:45:21
173
1
原创 十大常用的排序算法之归并排序 C#实现
十大常用的排序算法之归并排序 C#实现算法描述 什么是归并排序呢?归并排序,英文名“Merge Sort”。算法的主要思想为四个字——“分而治之”。将一个无序数组拆分成若干的子序列,然后归并子序列时,对其进行排序,这样可以得到若干个有序的子序列。将已有序的子序列合并,得到完全有序的序列。举个栗子:现在有这样一个序列:{6,5,3,1,8,7,2,4}我们将其拆分为两个子序列:{6,5,3,1},{8,7,2,4}子序列可以继续拆分成四个子序列:{6,5},{3,1},{8,7},{2,4}
2021-03-31 20:03:48
261
原创 Unity 3D Generic动画类型,对于应用RootMotion的设置
对于一些动作模型,美工大大在制作时就已经添加好了动作的位移量,Unity3D的Mecanim动画系统可以直接复用3DS MAX中制作的动画文件中的位移。对于humanoid类型的动画,通过勾选animator上的ApplyRootMotion便可以使用动画中的位移。但是对于Generic动画类型,仅仅勾选ApplyRootMotion是不够的,我做一个简单的演示。对于一组攻击动画每次攻击会向前走一段距离,勾选了ApplyRootMotion时,在动画播放完毕时,仍然会回到原来的位置。很显然动画的
2021-03-30 19:01:48
1374
原创 十大常用的排序算法之希尔排序 C#实现
十大常用的排序算法之希尔排序 C#实现 昨天讲了一下插入排序,今天让我们看看他的升级版———“希尔排序”。算法描述 什么是希尔排序呢?希尔排序,英文名“Shell Sort”。它基于插入排序的算法思想,增加了一个“增量”(或者说是“每组元素之间的间隔”)的概念。将一组数据按下标的一定“增量”分组,对每组使用直接插入排序算法排序。每一次循环过后,“增量”会变小,每个分组中的元素会增加。当增量减小到1时,所有元素被分为一组,排序结束。举个例子:现在我们有一个这样的无序数组。数组的长度为10,增量
2021-03-28 13:00:28
199
原创 无重复字符的最长字串
无重复字符的最长字串 有人白天相爱,有人夜里看海,有人LeetCode的第一题都做不出来。记录一下在力扣上看到的,让人耳目一新的解法。题目描述. 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: s = "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: s = "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: s = "pw
2021-03-27 17:17:52
619
原创 十大常用的排序算法之插入排序 C#实现
十大常用的排序算法之插入排序 C#实现算法描述 什么是插入排序呢?插入排序,一般也被称为直接插入排序,英文名Insertion Sort。它的主要思想为:将数组分为有序数组和无序数组,在无序数组中抽出一个元素,插入到有序数组。当然不可能随随便便就放进有序数组了,在插入有序数组时需要找到一个合适的位置。那么怎么来找到这个合适的位置呢,我举一个简单的例子。 大家都打过扑克牌吧!假设你摸起的第一张牌是“9”,这个时候将你手上的牌看做一个有序数组,牌堆的牌是无序数组。摸起的第二张牌是“5”,那么这第二
2021-03-27 13:13:28
260
2
原创 稳定排序和不稳定排序
什么是稳定排序 在之前的排序算法介绍中,忘记介绍什么是稳定排序,这里给大家简述一下。稳定排序的概念 待排序的记录序列中可能存在两个或两个以上关键字相等的记录。排序前的序列中Ri领先于Rj(即i<j).若在排序后的序列中Ri仍然领先于Rj,则称所用的方法是稳定的。 假设在无序的数组中存在两个相等的值x1、x2,x1原本在x2的左边,如果在排序结束后x1仍然在x2的左边,那么该排序就是一个稳定排序。相反的,如果排序结束后x1在x2的右边,那么该排序就是不稳定排序。举个栗子:现在有一个无序数
2021-03-27 13:05:20
1181
原创 十大常用的排序算法之选择排序 C#实现
十大常用排序算法之选择排序 C#实现算法描述 什么是选择排序呢?选择排序,英文名"Selection sort",是一种简单又直观的排序方法。算法的主要思想为,每一次循环过程中找到一个最小的元素,将这个元素和未排序过的那部分数组的第一个元素交换。有点拗口,我举个例子。 在一节体育课上,所有同学随意的站成了一列。 老师觉得这样的列不够整齐,想按照身高,从矮到高排成一个竖列。他从头到尾扫了一眼,拉出一个最矮的同学(哦,我承认,我就是那个全班最矮的→_→,我讨厌这个环节)。 然后老师让我和第
2021-03-25 20:16:26
240
原创 十大常用的排序算法之冒泡排序 C#实现
十大常用的排序算法之冒泡排序 C#实现最近想换一份工作,把之前所学习过的算法知识捡起来复习一遍。废话不多说,首先从最简单的冒泡排序开始。算法描述什么是冒泡排序呢?冒泡排序,英文名"Bubble Sort"。它就像水中漂浮的一组气泡一样整齐的上升(bulu bulu~)。而在这些气泡之中,体积大一些的气泡的上升的速度更快一些,会最先浮出水面。冒泡排序就如同这些气泡一般,依次比较相邻数据的大小,将较小数据放在前面,较大的数据放在后面。例如,对于一个n个元素的数组,第一次比较第1个元素和第2个元素,如果
2021-03-25 00:03:49
338
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人