ARTS (第26周)
适时回顾,巩固知识
Algorithm 算法
链表小练习(反转、求中间)
1 | package algorithm.demo.linked; |
Leetcode
1、判断链表是否有环
我这里使用的是双指针的标准做法,双指针一起走,如果存在环,链表就会死循环,使用双指针一定会有两个指针是指向同一个的时候。
除此之外
1、哈希表法
用哈希储存遍历过的数据,这个比较容易理解,就是另外找个空间保存遍历过的,而使用hash性能较好。
2、还可以破坏链表法 (java是个强类型的语言 不太适用,而且会破坏链表,但也是个思路
即该题目中,节点是数字类型的值。
每次遍历将节点的值修改为其它值,如string类型的
遍历的时候 遇到string类型的值就代表着存在环
3、循环次数和链表数量的累积比较
首先需要知道一点,就是如果存在环进行遍历会出现死循环的情况,那么根据这个特点,我们就可以继续。
根据评论里有人测试过,题目中最大的节点数量数是8029,
这个有点取巧,只要循环超过8029次,并且节点还不是空的话那就是存在环。其它情况就是不存在环
2、合并多个有序链表
这里我使用的是归并排序。
除此之外还可以使用最小队列来做,也可以自己实现一个简单的小顶堆来实现这道题
除次之外,将节点放在一个数组/集合里,然后使用各种排序算法进行排序也是可行的。
1 | package algorithm.demo.linked; |
Review 英文文章
https://docs.spring.io/sts/nan/v399/NewAndNoteworthy.html
STS的介绍
ps:因为本周自己家里的电脑换了个硬盘,就打算换成STS当IDE,结果启动的时候报错exit code 13(64位不兼容32位JDK),更换环境变量里的JDK的64/32版本即可。
Tip 技巧
尚硅谷springboot整合篇
springboot整合各类组件的整合的简易demo视频
以及一部分spring源码的介绍(spring的IOC本质的核心是一个容器,保存各类Bean和管理这些bean)
一、Spring Boot与缓存
二、Spring Boot与消息
三、Spring Boot与检索
四、Spring Boot与任务
五、Spring Boot与安全
六、Spring Boot与分布式
七、Spring Boot与监控管理
八、Spring Boot与部署
Share 分享
https://me.csdn.net/bjweimengshu
程序员小灰,将各种算法和其它技术作成漫画方式来表现的一个作者。