7 iwgd1

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 23w+

寻路算法--迷宫寻路

该篇文章接上篇并查集应用——生成随机迷宫, 此时已经可以生成一个任意大小的生成的迷宫       但是看起来还缺点什么,对,就是路径,没有路径怎么证明这真的是个迷宫,因此现学现用把路径加上。首先寻路算法属于图论算法,要想寻路先得有图,什么是图,这个就不细讲了,很多专门讲这个的文章,简单的说图就是一些点再加上连接这些点的边就构成了图,只要把迷宫抽象成图就能应用图论算法了。     .

2020-08-18 12:15:13

java覆盖equals注意事项

覆盖equals方法须要遵守通用约定:这里需要重点关注的情况是: 子类继承父类并且扩展了新的比较字段时,稍有不慎就会违反对称性或者传递性。如图,如果是 父类.equals(子类) 的情况,父类是看不到字段3的,这时如果进行比较一定是返回 true, 但是反过来 子类.equals(父类) 有两种情况:第一种情况是返回 false, 这种情况就违反了对称性。第二种情况是返回 true,这种情况符合对称性,但是违反了传递性以上的情况中,父类中一般都是这样实现的 class Point

2020-08-09 21:49:12

关于java字符串 “ab” + “cd“ 创建了几个对象

关于 String s = “ab” + “cd” 创建了几个字符串对象,首先前提是在程序其他地方没有涉及"ab"、“cd”和“abcd”的字面量以及拼接操作。如果关注过此类问题应该会知道这句代码只会产生一个"abcd"对象,不会产生“ab”、“cd”字符串对象,那么怎么证明呢。第一种方式可以通过javap工具产生类的字节码来查看,首先先上出测试代码import java.util.Scanner;public class StrTest1 { public static void main(St

2020-08-02 18:23:32

并查集应用——生成随机迷宫

    在读《数据结构与算法分析Java语言描述一书中》,在并查集章节的最后,作者给出了一个并查集的应用:生成随机迷宫此处作者给了思路,但是没有给出任何代码,所以自己实现了出来,先上最终效果图:页面是用的thymeleaf,用表格实现,方块区域与墙壁都是一个单元格,后端准备好样式直接在页面显示。首先先造一个没有路的迷宫:相关代码:public class Item {//元素所在索引private Integer index;//元素宽度pri

2020-07-29 12:39:34

Java Heap Pollution

当Java 泛型和可变参数配合使用时IDE会给出该警告:***Type safety: Potential heap pollution via varargs parameter args***,字面意思潜在的堆污染,不太能理解什么意思,百度一下没有找到好的解释,遂查阅Java相关文档和stackoverflow, 再结合自己的思考得出了自己的看法。...

2020-07-19 17:36:02

Python字符编码

在编写Python程序时经常会遇到乱码问题,如果搞不清楚编码问题就会晕头转向,如果搞清楚编码问题就会迎刃而解。首先什么是字符编码,我们知道计算机中存储的数据都是0和1,显然不能把字符存进去,因此就把字符和数字对应起来,用数字代替字符存到存储介质中,而数字与字符的映射关系就是编码表。美国人最先制定了ASCII编码表,里面定义了字母、数字和其他一些常用字符的编码,编码数字范围为0~127。但是问题来了

2017-12-23 23:36:51

关于Python中的import(三)

上节介绍了 importlib.import_module(),和 package 的基础概念,本节深入理解导模块的机理以及简单了解 Namespace package在 import 模块的时候,系统会首先到 sys.modules 里面去查找要导入的模块,sys.modules 是个什么东东呢,我们打印一下看看它是什么:import sysprint(type(sys.modules)) #

2017-12-22 13:48:18

关于Python中的import(二)

上节简单说了 import 系统 和 __import__ 函数, 这节大概说下 importlib 中的 import_module, 和 package 相关的东西。importlib.import_module(name, package=None) name 是需要导入模块的名称,可以以相对或绝对方式导入;绝对方式是写上模块的绝对包路径,例如要导入 pkg 下的 module 模块,可以

2017-12-20 13:23:57

关于Python中的import(一)

在写Python的代码时,经常要导入模块,Python 的 import 语法和其他语言相比比较特别,在使用过程中有些地方也需要注意,遂根据官方文档了解了下import 系统,有助于理解Python的机制我们平时用的最多的导模块方式是通过 import statement, 比如说我们要导入内置 time 模块,我们会这样:import time如果需要导入 package 下的模块, 需要:im

2017-12-20 09:47:50

Python作用域总结

Python特有的语法规则和诸如Java等其他静态类型语言有很大不同,而作用域规则则是其一,初识Python会遇到一些问题,现在对Python作用域相关的知识做个总结。Python作用域规则一句话概括就是 LEGB 规则; L 代表 Local、E 代表 enclosing、G 代表 Global、B 代表 Builtin作用域由 Python 的代码文本决定,一个模块定义了一个 Global 作

2017-12-19 22:48:35

关于Unity坐标系转换

transform.TransformPoint:将坐标点由局部坐标系转换到世界坐标系。transform.InverseTransformPoint:将坐标点由世界坐标系转换到局部坐标系。transform.TransformDirection:将向量由局部坐标系转换到世界坐标系。transform.InverseTransformDirection:将向量由世界坐标系转换到局部

2017-05-04 14:49:22

Unity 求两个向量间夹角

在学习Unity官方案例时,发现其中用了两种求物体XZ平面旋转夹角的方法:      方法1:float angle = Vector3.Angle (fromVector, toVector); //求出两向量之间的夹角Vector3 normal = Vector3.Cross (fromVector,toVector);//叉乘求出法线向量angle *= Mathf.Sig

2017-05-01 18:12:04

Unity输入控制

Unity 中,使用 Input 类获取用户输入,记录下常用的函数及注意事项。键盘输入:Input.GetKeyDown(KeyCode key) 获取指定按键被按下的事件,直到松开按键再次按下,才能获取第二次输入。其中参数 key 与物理按键对应,例如KeyCode.A 代表键盘上的 ‘A’ 键,KeyCode 与 物理按键的映射是无法改变的。      Input.GetKeyUp

2017-04-25 21:11:12

Unity脚本事件执行

Unity提供了许多系统事件调用函数,每个事件函数都有各自的调用时机,清楚这些函数的特点及作用,可以使我们在编写Unity脚本时,做到心中有数,避免错误。先来张Unity官方文档里给出的事件图:

2017-04-25 17:13:50
勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。