Algorithm
文章平均质量分 69
星空不语
时时想到可能被别人超越,才会用双倍的时间和精力去超越别人。(穆斯林的葬礼)
展开
-
[Algorithm]Maze Prim算法与A*寻路算法(上)
这是为什么呢?其实这是因为程序中引入了“对象池”的概念。首次创建由于会实例化大量的节点对象,所以耗时会很高,而后面几次创建则会使用前面所生成的对象,如果前后两次不同的话,则后面这一次会增加或删除前后两次所需对象的差值,以满足后面这次节点数的需求。通过这种方式就减少了实例化对象的次数,从而减少了创建时间,由于创建后对象会一直存在,所以这是一种用空间换时间的做法。原创 2016-02-05 23:38:37 · 1874 阅读 · 0 评论 -
[Algorithm]Maze Prim算法与A*寻路算法(下)
附上全文连接: [Algorithm]Maze Prim算法与A*寻路算法(上) [Algorithm]Maze Prim算法与A*寻路算法(中) [Algorithm]Maze Prim算法与A*寻路算法(下)文章中的所有源码下载链接附在“[Algorithm]Maze Prim算法与A*寻路算法(上) ”文章中。接着上一篇来讲,这篇主要讲的是A*寻路算法。 首先讲一下算法的大致流程:原创 2016-02-06 20:33:40 · 847 阅读 · 0 评论 -
[Algorithm]Maze Prim算法与A*寻路算法(中)
附上全文连接: [Algorithm]Maze Prim算法与A*寻路算法(上) [Algorithm]Maze Prim算法与A*寻路算法(中) [Algorithm]Maze Prim算法与A*寻路算法(下)文章中的所有源码下载链接附在“[Algorithm]Maze Prim算法与A*寻路算法(上) ”文章中。上一篇中大致讲了下内容,接下来将要讲的是Maze Prim算法。 先附上一段原创 2016-02-06 00:28:51 · 1232 阅读 · 0 评论 -
[Algorithm]二分法查找算法
简介二分法查找(Binary Search)又称为折半查找(Half-Interval Search),是一种针对有序数列的查找方法。时间复杂度每次把搜索区域减少一半 最差:O(logn)O(logn) 最优:O(1)O(1)空间复杂度迭代: O(1)O(1) 递归: O(logn)O(logn)工作原理如下: 判断查找范围最大值与最小值是否相等: 如果相等,则取查找范围下标的中间值,并与所原创 2016-10-08 23:07:52 · 656 阅读 · 0 评论 -
[Algorithm]排序算法
闲来无事回顾一下原来所学的排序算法,包括冒泡、选择、插入、希尔、快速、归并排序,这六种。 首先依次讲解原理,最后放出实现及测试速度源码。冒泡排序 我想大部分人学习的第一个排序算法就是这个。 顾名思义,如泡泡般,越到水面就越大,即经过连续不断的判断,选取大(或小)的值进行交换,一轮结束后,未排序数据最后面的就是最大(或最小)的值。 工作原理 比较相邻的元素,如果前一个比原创 2016-09-22 01:38:23 · 799 阅读 · 0 评论 -
[Algorithm]随机抖动整数拆分
测试效果: 当number=101、size=6、wave=3时,可得到如下效果: 17、19、16、18、13、18 18、15、18、14、19、17 可看到生成的随机数在16上下浮动,幅度不超过3,且总和为101。源码如下:using System.Collections.Generic; using UnityEngine; using Random = UnityEngine.Rando原创 2017-01-31 01:44:02 · 875 阅读 · 0 评论