![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
八股文-算法
手撕算法
猿码阿庆
北漂八年java IT从业者,喜欢微服务,分布式,大数据相关
展开
-
链表反转-Java
例如上面的链接,如果需要再head插入1,则首先需要获取原先的head.next 缓存temp,然后让head 指向 1 即 head.next = new Node();然后让新增节点的next指向temp 即 new Node().next = temp;所以所谓的头插法反转就是新增了一个新的链表,然后遍历原先的链表,每次使用头插法插入到新的链表即可;第一种方法: 借助栈的先进后入原则。虚拟一个头结点,尾结点;原创 2023-12-26 16:07:18 · 342 阅读 · 0 评论 -
LRU算法
【代码】LRU算法。原创 2023-12-26 15:09:33 · 346 阅读 · 0 评论 -
链表内指定区间反转
将一个节点数为 size 链表 m 位置到 n 位置之间的区间反转;原创 2023-12-26 20:13:04 · 366 阅读 · 0 评论 -
排序算法-快速排序
1:查找基准点,假设基准点左侧的元素均小于基准元素,基准右侧的元素均大于基准元素2:使用两个指针一个指针从左向右移动,另外一个指针从右向左侧移动,如果右侧指针元素大于基准元素,则右侧指针左移,如果左侧指针元素小于基准元素,左侧指针右移3:当左侧指针和右侧指针相同的时候说明移动完成,交换基准元素和该位置的值即可,此时完成基准元素左侧的值均小于基准,右侧的值均大于基准。原创 2024-01-15 12:20:04 · 354 阅读 · 0 评论