太阳hxy
太阳hxy
全部文章
分类
选择题(2)
题解(76)
归档
标签
去牛客网
登录
/
注册
太阳hxy的博客
全部文章
(共29篇)
对链表进行插入排序
对链表进行插入排序 思路: 1.只要还没有走到链表的倒数第二个节点,就表明插入排序还没有完成,就继续进行插入排序 2.对于每次插入排序,都需要遍历整个链表,只要是保持升序的就跳过,直到找到第一个打破升序的节点 3.先判断一下如果发现p.next为null,就表明原先已有的链表就是有序的,就可以直...
Java
C++14
链表
2023-07-15
1
315
二叉树展开为单链表
二叉树展开为单链表 思路: 1.先进行计数一下二叉树的节点的个数(递归) 2.开一个用于存树的节点的容器数组 3.将二叉树的节点存入数组容器中 4.再将二叉树的展开为单链表 代码: import java.util.*; import java.util.ArrayList; /* * ...
Java
二叉树
链表
递归
2023-07-15
1
376
链表相加(一)
链表相加(一) 思路: 1.建立一个新的虚的头结点 2.只要两个链表中还有节点并且进位不为0,就需要进行相加操作 代码: import java.util.*; /* * public class ListNode { * int val; * ListNode next ...
Java
链表
模拟
2023-07-14
3
424
链表的中间节点
链表的中间节点 思路: 1.设置两个指针,一个快指针fast和慢指针slow,快指针以两个节点两个节点进行移动,慢指针以一个节点进行移动 2.只要当fast指针和fast.next指针还没有指向null 3.最后slow指向的就是链表的中点 代码: import java.util.*...
Java
链表
双指针
2023-07-14
1
384
无环单链表插值
无环单链表插值 思路: 1.创建一个新链表的虚的头结点** 2.遍历数组,将每个数组中的值创建一个对应的节点 3.注意分为两种特殊的情况情况讨论:情况一:val的值是插在两个节点中间,val是插在链表的末尾 代码: import java.util.*; /* * public cla...
Java
链表
模拟
2023-07-14
1
359
划分链表
划分链表 方法一:创建两个表之后进行连接 思路: 1.创建两个表的虚的头节点 2.遍历原先的表,将大于等于x的节点找出来连在存大的节点的表中,将小于x的节点找出来连在用于存小于x的节点的表中 3.再将两个表进行连接 代码: import java.util.*; /* * public...
Java
双指针
链表
模拟
2023-07-13
1
377
重排链表
重排链表 方法一:暴力连接 思路: 1.观察排序后的序列我们可以发现,第一个节点后接最后一个节点,第二个节点后接倒数第二个节点,以此类推。故我们可以每次都找到最后一个节点并把它接在当前节点的后面 2.我们用一个指针p指向头节点,每次找到链表的最后一个节点并将它接在p所指节点的后面,然后p再指向下...
C++
Java
链表
双指针
2023-07-13
1
395
删除链表的节点
删除链表的节点 思路: 1.由于要进行删除操作,由于头结点是特殊的,所以为了同一操作,可以设置一个虚的头节点,连接到原链表的头结点 2.设置两个指针:一个指针pre(指向需要删除的节点的前一个节点),和一个指针cur(指向需要删除的节点) 代码: import java.util.*; ...
Java
链表
双指针
2023-07-13
1
332
删除链表中重复的元素
删除链表中重复的元素 方法一:直接删除重复的节点 图解: 链接 思路: 1.判断链表是否为空,如果为空,就直接返回null 2.由于进行删除,所以可以定义一个虚的头结点 3.遍历链表,如果遇到前后两个节点相等,就进行内循环,找到不重复的点 4.将重复的点跳过 ** 代码:** impo...
Java
链表
2023-07-12
1
882
删除有序链表中重复的元素-I
** 删除有序链表中重复的元素-I** 图解: 链接 思路: 1.判断一下链表是否为空,如果是空,就不需要去重,直接返回null 2.当当前的节点和下一个节点不为null的时候 3.判断一下如果当前的节点等于下一个节点,就让当前节点指向下下个节点 4.否则就直接指向下一个节点 代码: ...
Java
链表
2023-07-12
1
370
首页
上一页
1
2
3
下一页
末页