太阳hxy
太阳hxy
全部文章
题解
选择题(2)
归档
标签
去牛客网
登录
/
注册
太阳hxy的博客
全部文章
/ 题解
(共73篇)
旋转链表
旋转链表 思路: 1.先用一个hashmap将对应的下标和节点的值存起来 2.再遍历一遍链表,对原链表中的节点的值进行修改,根据下标查找对应的节点,将后面的k个节点进行平移到前面, 将前面的平移到后面(实际上是进行了修改) 3.注意取余操作 代码: import java.util.*; ...
Java
哈希表
链表
2023-07-15
3
499
排序奇升偶降链表
排序奇升偶降链表 思路: 1.先根据奇数位和偶数位的节点拆分为两个表 2.再将第二个表进行反转 3.最后将第一个表和第二表进行合并 代码: import java.util.*; /* * public class ListNode { * int val; * ListN...
Java
链表
模拟
2023-07-15
1
448
给单链表加一
给单链表加一: 思路: 1.先建立一个虚的头结点,将头结点连接到原链表的头结点 2.注意头结点的值要初始化为0!!! 3.由于需要判断当前的节点的值是否需要加1,就需要知道后面的节点的值是否会产生进位 4.所以用递归的思想,先得到后面的节点的值 5.分为两种情况:如果后面没有节点,就表明该链表只...
Java
链表
递归
模拟
2023-07-15
1
443
两两交换链表的节点
两两交换链表的节点 用递归的思想: 1.递归的结束条件:剩余未反转的节点的数量少于两个的时候,就不需要进行反转,直接返回 2.否则就将两个节点进行反转 3.再用递归将后面的节点也进行翻转,返回反转后的头节点 4.将前一个反转后的区间与后面翻转后的区间进行连接 代码:: import java....
Java
递归
链表
2023-07-15
1
339
环形链表的约瑟夫问题
环形链表的约瑟夫问题 思路: 1.先创建编号为1的人的节点作为循环链表的头结点 2.将剩下的所有的人创建对应的节点连接形成形成链表 3.将链表的首尾相连,因为对于约瑟夫问题,需要的是循环链表 4.进行游戏,每次让第m个人出圈 代码: import java.util.*; public...
Java
链表
2023-07-15
1
413
对链表进行插入排序
对链表进行插入排序 思路: 1.只要还没有走到链表的倒数第二个节点,就表明插入排序还没有完成,就继续进行插入排序 2.对于每次插入排序,都需要遍历整个链表,只要是保持升序的就跳过,直到找到第一个打破升序的节点 3.先判断一下如果发现p.next为null,就表明原先已有的链表就是有序的,就可以直...
Java
C++14
链表
2023-07-15
1
332
二叉树展开为单链表
二叉树展开为单链表 思路: 1.先进行计数一下二叉树的节点的个数(递归) 2.开一个用于存树的节点的容器数组 3.将二叉树的节点存入数组容器中 4.再将二叉树的展开为单链表 代码: import java.util.*; import java.util.ArrayList; /* * ...
Java
二叉树
链表
递归
2023-07-15
1
388
链表相加(一)
链表相加(一) 思路: 1.建立一个新的虚的头结点 2.只要两个链表中还有节点并且进位不为0,就需要进行相加操作 代码: import java.util.*; /* * public class ListNode { * int val; * ListNode next ...
Java
链表
模拟
2023-07-14
3
434
链表的中间节点
链表的中间节点 思路: 1.设置两个指针,一个快指针fast和慢指针slow,快指针以两个节点两个节点进行移动,慢指针以一个节点进行移动 2.只要当fast指针和fast.next指针还没有指向null 3.最后slow指向的就是链表的中点 代码: import java.util.*...
Java
链表
双指针
2023-07-14
1
392
连续子链表的最大和
连续子链表的最大和 思路: 1.由于需要求最长的连续子串之和,所以先可以初始化为最小值 2.用动态规划的解决连续的最长的子串和的思想 3.用一个个max1记录两种选择中较大值:一种情况是将当前的数加到原先串的后面,另一种情况是将该数直接作为一个新的串的起始点 4.再与之前记录下来的最大的连续子串...
C++
链表
动态规划
2023-07-14
2
484
首页
上一页
1
2
3
4
5
6
7
8
下一页
末页