- 博客(25)
- 资源 (1)
- 收藏
- 关注
原创 LeetCode.100_[树]_相同的数
文章目录1.题目2.思路3.代码实现4.代码简化1.题目2.思路递归,发现不同一直返回false,相则继续验证3.代码实现class Solution { public boolean isSameTree(TreeNode p, TreeNode q) { boolean flag = true; if(p == null && ...
2020-03-02 13:56:33
138
原创 LeetCode.24_[链表]_两两交换链表中的节点
文章目录1.题目2.解题思路3.代码实现1.题目2.解题思路临时存储第一个节点,之后将第一个节点插入到第二和第三个节点之间3.代码实现class Solution { public ListNode swapPairs(ListNode head) { ListNode first = new ListNode(0); first.next = head;...
2020-02-27 17:30:40
201
原创 LeetCode.19_[链表]_删除链表的倒数第N个节点
文章目录1.题目2.解题思路3.代码实现4.其他思路1.题目2.解题思路获取链表长度,之后再删掉长度-n+1的的节点3.代码实现class Solution { public ListNode removeNthFromEnd(ListNode head, int n) { ListNode first = new ListNode(0); ListNod...
2020-02-27 16:39:40
191
原创 LeetCode.2_[链表]_两数相加
文章目录1. 题目2.解题思路3.代码实现4.解法拓展1. 题目2.解题思路找到长度长的链表,把短链表的值直接加到长链表对应的值上,之后判断长链表的值是否大于9,大于则进位,如果后一位为空,得添加一个节点3.代码实现class Solution { public ListNode addTwoNumbers(ListNode l1, ListNode l2) { ...
2020-02-27 13:59:11
145
原创 LeetCode.232_[栈]_用栈实现队列
文章目录1.题目2.解题思路3.代码实现4.其他解法1.题目2.解题思路用两个栈,入队时将栈中元素全部拿出,再全部入栈,把新入元素压入栈底3.代码实现4.其他解法最好是优化入队,繁化出队这个使用了摊还使用两个栈,一个用来入队,一个用来出队LeetCode摊还分析...
2020-02-19 10:49:31
105
原创 LeetCode.225_[栈]_用队列实现栈
文章目录1.题目2.解题思路3.代码实现1.题目2.解题思路每次入队时,把之前队列中的数一个个出队再入队,操作结束后,最后入队的在队头(这里可以用一个队列来实现,而我用来一个数组来存储数据,可以优化)3.代码实现class MyStack { Queue<Integer> stack; /** Initialize your data structure ...
2020-02-19 10:10:16
98
原创 LeetCode.150_[栈]_逆波兰表达式
文章目录1.题目2.解题思路3.代码实现4.优化解法1.题目2.解题思路用栈存储数据,遇到运算符弹出两个数据进行运算,遇到数据则入栈3.代码实现 Stack<Integer> num = new Stack<Integer>(); int num1, num2; for (int i = 0; i < tokens.l...
2020-02-17 23:29:00
94
原创 LeetCode.141_[链表]_环形链表
文章目录1.题目2.解题思路3.代码实现1.题目2.解题思路快慢指针,有环两个指针迟早相遇,没环,快指针走到头就结束3.代码实现public class Solution { public boolean hasCycle(ListNode head) { ListNode first = new ListNode(0); first.next = he...
2020-02-17 15:51:34
89
原创 LeetCode.1290_[链表]_二进制链表转整数
文章目录1.题目2.解题思路3.代码实现4.另一种二进制转十进制求法1.题目2.解题思路先遍历一遍链表,获取链表长度,然后从最高位开始计算3.代码实现class Solution { public int getDecimalValue(ListNode head) { ListNode temp = head; int count = 0, sum = ...
2020-02-17 11:08:56
130
原创 LeetCode.876_[链表]_链表的中间节点
文章目录1.题目2.解题思路3.代码实现4.另一种解题思路1.题目2.解题思路先遍历一遍链表,获取链表长度,获取到链表的中间节点3.代码实现class Solution { public ListNode middleNode(ListNode head) { ListNode temp = head; int count = 0; while(temp...
2020-02-17 10:38:00
276
原创 LeetCode.234_[链表]_回文链表
文章目录1.题目2.解题思路3.代码实现1.题目2.解题思路一开始想用栈来做,但为了空间复杂度达到O(1),使用另一种方法把链表前半段反转,之后与后半段比较3.代码实现class Solution { public boolean isPalindrome(ListNode head) { ListNode first = head, midnode = h...
2020-02-16 21:32:43
83
原创 LeetCode.20_[栈]_有效的括号
文章目录1.题目2.解题思路3.代码实现1.题目2.解题思路检测到左括号,入栈检测1到右括号,检查栈顶元素,匹配则出栈3.代码实现class Solution { public boolean isValid(String s) { Stack<Character> stack = new Stack<Character>(); ...
2020-02-16 16:40:51
128
原创 LeetCode.237_[链表]_删除链表中的节点
文章目录1.题目2.解题思路3.代码实现1.题目意思就是,一个函数传入这个节点,你删掉2.解题思路一般就是node.next = node.next.next但这一题不行,他没给你前面的节点所以通过改值,然后删除下一个节点这严格来说不能算删节点3.代码实现class Solution { public void deleteNode(ListNode node) { ...
2020-02-16 16:29:53
131
原创 LeetCode.160_[链表]_相交链表
文章目录1.题目2.解题思路(双指针)3.代码实现4.拼接思路1.题目题目不明确,具体意思就是找到两个链表相交的节点,之后返回以相交节点为头节点的链表2.解题思路(双指针)两个相交链表,链表1长度+链表2头节点到相交节点的长度=链表1头节点到相交节点的长度+链表2长度不相交链表,链表1长度+链表2长度=链表2长度+链表1长度3.代码实现public class Solution...
2020-02-16 15:41:09
95
原创 LeetCode.206_[链表]_反转链表
文章目录1.题目2.解题思路(一)3.解题思路(二)4.官方的递归解法1.题目2.解题思路(一)建立一个新的头节点,将原先链表上从头到尾的节点依次使用头插法插到新的头节点上class Solution { public ListNode reverseList(ListNode head) { ListNode first = new ListNode(0);...
2020-02-16 11:59:40
211
原创 LeetCode.203_[链表]_移除链表元素
文章目录1.题目2.解题思路3.代码实现1.题目2.解题思路设置一个头节点指向已有链表头,一直看链表的下一个元素是不是和待删值相同,相同则删除,不同则移动到下一个节点(设置头节点,一直用next,循环条件中也用next,特别好使)3.代码实现class Solution { public ListNode removeElements(ListNode head, int v...
2020-02-15 23:25:38
82
原创 LeetCode.21_[链表]_合并两个有序链表
文章目录1.题目2.解题思路3.代码实现4.其他解法1.题目2.解题思路我的解法:将两个列表第一个元素较小的作为主链,之后把副链的元素插入到主链其他解法:设置一条新的链表,之后将两个链表元素比较,较小的插入新链表链尾,插入之后对应链表移动到下一节点3.代码实现class Solution { public ListNode mergeTwoLists(ListNode l1...
2020-02-15 23:17:27
86
原创 LeetCode.83_[链表]_删除排序链表中的重复元素
文章目录1.题目2.解题思路3.代码实现4.遇到问题1.题目2.解题思路以第一个元素为起始点,后yixiang续元素与第一个元素比较,相同责删除,不同则一向下一节点3.代码实现class Solution { public ListNode deleteDuplicates(ListNode head) { ListNode temp = head; whi...
2020-02-15 22:49:10
100
原创 LeetCode.155_[栈]_最小栈
leetcode.155_最小栈一、在LeetCode中Java实现二、在eclipse中测试三、解题思路四、LeetCode精选题解
2020-02-03 18:14:36
116
xshell5_wm_5.0.1332&Xftp6.0.0175.zip
2020-02-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人