- 博客(22)
- 收藏
- 关注

原创 斗地主机器人AI算法和策略(个人思路总结)
一、规则和权值定义1、斗地主中存在很多种的牌型,比如:单张,对子,三带,顺子,连队,飞机,炸弹等 ,我的机器人主要根据权重去设计的,我给每一种牌型都制定了一个权重,比如3权重是多少,其他牌型的权重有时多少,定义了一个结构体如下:type CardGroup struct{ cgType PattenType //枚举类型 value int //牌的价值 count int //牌的个数 maxCard int
2020-12-23 14:18:09
9895
4
原创 利用docker hub搭建一个属于自己的容器仓库记录以及遇到的问题
docker push的时候遇到timeout,以及docker hub仓库的搭建
2022-11-30 17:01:11
493
原创 读取csv文件
在这里插入代码片func TestCompareValue(t *testing.T) { logFile, err := os.OpenFile("xuxinwen.txt", os.O_CREATE|os.O_APPEND|os.O_RDWR, 0666) totalCards := make(map[int32]libpoker.Cards, 3) totalValue := make(map[int32]int32, 3) //playerCount := make(map[int32]in
2021-04-21 20:35:16
258
原创 go语言切片排序算法实现
/*对切片排序*/func SortSlice(slice []int32) { for i := 0; i < len(slice)-1; i++ { //遍历i位以后的所有元素,如果比i位元素小,就和i位元素互换位置 for j := i + 1; j < len(slice); j++ { if slice[j] > slice[i] { slice[i], slice[j] = slice[j], slice[i] } } } //fmt.P
2021-04-09 10:24:25
338
原创 linux如何查看端口被占用的两种方法
linux如何查看端口号被占用的方法:1、lsof -i:端口号2、netstat -tunlp |grep 端口号注释:其中tunlp 中的第一个t代表只显示tcp相关的选项,-u 代表udp相关的选项-n代表 拒绝显示别名 能显示数字的全部转换为数字, -l代表仅仅只列出只显示出listen(监听)状态的服务状态 p代表显示建立连接的相关的程序名。...
2020-12-16 09:15:09
1637
原创 mac电脑如何解决环境变量失效的问题
mac电脑有时候在path下面配置了环境变量但是老是失效,或者根本不起作用怎么办? 首先去~/.bash_profile 文件下面去查找一下是否在这个文件下面有配置你所需要的路径,如果没有的话,则需要在这个文件下面去配置。配置完成之后,记得执行source ~/.bash_profile 命令 刷新,然后在重新打开一个新的终端,去查看你的配置是否生效。 如果说上面的办法没有用的话,则去看~ /.zhrch文件下面去查看是否存在你配置的环境变量,因为ma...
2020-11-24 20:24:21
1442
原创 goroutine的优点
1.`goroutine`具有可增长的分段堆栈。这意味着它们只在需要时才会使用更多内存。 2.`goroutine`的启动时间比线程快。 3.`goroutine`原生支持利用channel安全地进行通信。 4.`goroutine`共享数据结构时无需使用互斥锁。1、go语言的并发是基于goroutine的,goroutine类似于线程,但又不是线程,可以将goroutine理解为是一种虚拟的线程,2、go语言运行的时候,会调用goroutine,并将gorouti...
2020-07-26 22:38:48
596
原创 Go中如何把一个自定义的类型转换为指针类型
首先我们定义一个类型为GameStateType当我们需要使用到其指针类型的时候,我们可以调用Enum()方法进行转换。
2020-06-17 10:50:31
1397
1
原创 Go语言中操作系统线程和goroutine的关系m:n
1、一个操作系统线程可以对应用户态多个goroutine2、go程序可以同时使用多个操作系统线程3、goruoutine和OS线程是多对多的关系,即m:n
2020-04-29 16:16:02
613
原创 Go语言中什么时候该使用指针类型
1、需要修改接受者中的值的时候2、接收者是拷贝值代价比较大的对象的时候3、保证一致性,如果有某个方法使用了指针接收者,那么其他的方法也该使用指针接收者...
2020-04-23 14:25:08
841
原创 使用Golang语言的分金币作业 你有50枚金币,需要分配给以下几个人:Matthew,Sarah,Augustus,Heidi,Emilie,Peter,Giana,Adriano,Aaro
//分金币作业// 你有50枚金币,需要分配给以下几个人:Matthew,Sarah,Augustus,Heidi,Emilie,Peter,Giana,Adriano,Aaron,Elizabeth。// 分配规则如下:// a. 名字中每包含1个'e'或'E'分1枚金币// b. 名字中每包含1个'i'或'I'分2枚金币// c. 名字中每包含1个'o'或'O'分3枚金币// d...
2020-04-22 16:03:50
691
1
原创 老男孩Go语言作业1、求数组[1,3,5,7,8]所有元素的和 2、找到数组中和为指定数值的两个元素的下标,比如从数组的[1,3,5,7,8]中找到和为8的两个元素的下标之和,比如(0,3)
1、求数组[1,3,5,7,8]所有元素的和2、找到数组中和为指定数值的两个元素的下标,比如从数组的[1,3,5,7,8]中找到和为8的两个元素的下标之和,比如(0,3)...
2020-04-17 17:13:17
1111
原创 Go语言的最主要特性
Go语言最重要的特征如下:1、自动回收垃圾2、更丰富的内置类型3、函数的多返回值4、错误处理5、匿名函数和闭包6、类型和接口7、并发编程8、反射9、语言交互性注意:当标识符(包括常量、变量、类型、函数名、结构体字段等等)以一个大写字母开头,如Group1,那么使用这种类型的标识符的对象就可以被外部的代码所使用(客户端的程序需要事先导入这个包),这被称为...
2020-04-17 17:09:31
272
原创 Redis与memcache的区别
memcache只支持简单的key-value的形式数据,而Redis支持多种丰富的数据类型,如zset,list等 memcache不支持复制,而Redis支持主从复制 memcache是多线程的,而Redis是单线程 memcache不支持持久化机制,而Redis支持...
2020-03-31 14:10:34
143
原创 Redis持久化:采用Aof和rdb
redis的持久化主要是采用rdb和aof进行的,下面我来将它们之间进行比较rdb:采用二进制文件的方式,不是实时的进行存储,存储10key以上,才开始持久化机制,体积小。优点:使用单独的子进程进行持久化操作,主进程不会进行任何IO操作,保证Redis的高可用特性,Redis默认采用rdb的方式进行存储。缺点:rdb是间隔一段时间才进行持久化,如果说在持久化的期间,Redis发生故障的...
2020-03-31 14:07:04
166
原创 JVM内置缓存
JVM内置缓存主要分为 oscache和escacheMybatis中的二级缓存机制就是使用oscache--------》主要针对的是对数据库层的访问hibernate中的二级缓存机制escache---------》主要针对jsp页面进行缓存...
2020-03-31 13:54:05
679
原创 Mysql里面的自连接(一看就懂那种哟!!!)
话不多说,先上图吧!!!!这是一张员工表Employee:那么问题是这样的,如何通过这个找到每个员工的上司呢??(注意:这里的mgr是当前员工的上司)。。查询语句采用自连接的方式:得到如下的结果:解释如下: 其实自连接,就是说相当于是两张表,以第一张表的mgr为主,去匹配与它对应的第二张表的id然后会拼接成这样的数据大概就是这样了。。。嘻嘻!...
2019-12-13 15:54:09
2847
2
原创 反射理解及其优缺点
每个类都有一个Class对象,包含了与类有关的信息。当编译一个新类时,会产生一个同名的 .class 文件,该文件内容保存着 Class 对象。类加载相当于 Class 对象的加载,类在第一次使用时才动态加载到 JVM 中。也可以使用Class.forName("com.mysql.jdbc.Driver")这种方式来控制类的加载,该方法会返回一个 Class 对象。反射可以提供运...
2019-11-28 17:52:31
689
转载 理解浅拷贝和深拷贝
浅拷贝浅拷贝:被拷贝对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象。换言之,浅复制仅仅复制所考虑的对象,而不复制它所引用的对象。比如举个例子,一个类A中有另外一个类B类型的变量。在A重写clone函数调用super.clone的时候,创建的新对象和原来对象中的类B类型的变量是同一个,他们指向了同一个B的类型变量。如果在A中对B的变量做了修改,在新的拷贝...
2019-11-28 17:47:38
155
原创 Navicate 连接Liunx的数据库的时候出现2003的解决方案
一:解决2003方案: 防火墙问题,需要开放对应端口(3306)或者关闭防火墙; 1.开放3306端口: firewall-cmd --zone=public --add-port=3306/tcp --permanent 然后重启防火墙 命令含义: --zone #作用域 --add-po...
2019-10-03 20:37:47
883
原创 关于maven运行时出现 xxw.zz.maven.servlet.HelloServlet cannot be cast to javax.servlet.Servlet的解决方案
在运行我的maven项目的时候突然出现如下异常出现这个异常一般是因为jar包冲突引起的 因为prom.xml文件里面的jar包和tomcat自带的那个servlet-api.jar是冲突的先提供以下解决方案:先看一下你的porm.xml文件是否配有scope这个属性:如果没有的话,就给它配上,配上如果能成功运行的话,那么恭喜你问题得到了解决,如果还是不行的话,参考下面...
2019-09-12 12:14:51
285
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人