leetcode精彩解题
Sarah~
保持热情,虚心学习,积极进取
展开
-
leetcode445:链表求和
思想: 题目要求不翻转链表,利用栈先进后出的思想。将两个栈顶弹出的元素相加。 踩得一些坑 java实现中栈是整型,但是我把链表ListNode类型结点放入栈中,类型不同报错。应当push ListNode.val。 两个整数相加还要考虑到进位,比如十位数相加要考虑到个位的进位。同时也要看看十位数相加会不会产生进位生成百位。比如10+99的结果是三位数生成了百位。所以要对进位这个变量jnwei判断...原创 2020-03-25 17:22:52 · 93 阅读 · 0 评论 -
19:删链表倒数第n结点
方法1 双重循环,先遍历获取链表的长度。然后第二重循环找到要删的结点为第链表长度-n+1个结点,然后删除。 方法二:双指针 在解题的时候报错了,开始有一种情况没有考虑到,当删除链表的正数第一个结点的时候要做特殊的处理。java实现: /** * Definition for singly-linked list. * public class ListNode { * int val...原创 2020-03-24 17:03:35 · 84 阅读 · 0 评论 -
lc83:删除排序列表的重复元素
前言 递归真的是太强了。 leetcode解题 循环的方法 var deleteDuplicates = function(head) { var cur=head; // var nex=head.next; while(cur!=null&&cur.next!=null){ if(cur.val==cur.next.val){ ...原创 2020-03-22 21:15:44 · 87 阅读 · 0 评论 -
树的算法-实现一个Trie
leetcode208:实现一个前缀树 思路 前缀是也是一个树,结点包括两个属性,当前结点值value属性,下一个结点(这是一颗非二叉树,所以任意一个结点的子节点有26种可能,用Trie类型字符数组表示)。 但是在search的时候还要判断当前结点是不是叶子结点,所以有第三个属性—判断是否是最后一个结点 insert(word)传入一个单词后构造前缀树的时候,将字符串word转化成字符数组...原创 2020-03-19 18:01:08 · 96 阅读 · 0 评论