
leetcode
陈事有俞
菜鸟一位
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
leetcode 21.合并两个有序链表
合并两个有序链表本人大四实习生,水平有限。有错望海涵。 思路可使用递归。比较两个链表的头结点,值小的当头结点 代码/** * Definition for singly-linked list. * public class ListNode { * public int val; * public ListNode next; * ...原创 2018-09-11 12:03:18 · 171 阅读 · 0 评论 -
leetcode 19.删除链表的倒数第N个节点
删除链表的倒数第N个节点 Remove Nth Node From End Of List本人大四实习生,水平有限。有错望海涵指正。 思路-创建两个结点引用。第一个结点指向第n个结点,另一个结点指向第一个结点。然后一起往后移,第一个结点指向为null时,另一个结点指向的就是应该删除的结点。代码/** * Definition for singly-lin...原创 2018-09-11 12:18:09 · 139 阅读 · 0 评论 -
leetcode 22.括号生成 C#
括号生成 Generate Parentheses思路可使用递归向字符串里添加"("或者")"左括号的数量必须大于右括号的数量才能添加右括号代码public class Solution { public IList<string> GenerateParenthesis(int n) { List<s原创 2018-09-11 16:39:58 · 304 阅读 · 0 评论 -
leetcode 23. 合并K个排序链表 C#
合并K个排序链表 Merge K Sorted Lists思路分治法,把k个链表不停的分成两份,直到其中一份为2个链表或一个链表。2个链表就把这两个链表合并,返回合并的链表。代码/** * Definition for singly-linked list. * public class ListNode { * public int val;...原创 2018-09-12 10:36:13 · 227 阅读 · 0 评论 -
LeetCode 25.Reverse Nodes in k-Group k个一组翻转链表 C#
Reverse Nodes in k-Group k个一组翻转链表思路代码都是从网上收集的翻转k个节点的链表时,需要这个链表头结点之前的一个节点,也就是假头节点。链表翻转完后,这个假头结点要指向翻转完的链表的头结点。然后把链表的最后一个节点作为下一个需翻转的链表的假头结点。head -> n1 -> n2 ... nk -> nk+1 => head ->...原创 2018-09-19 17:42:21 · 187 阅读 · 0 评论 -
leetcode 20. 简单括号匹配
leetcode 20 简单括号匹配今天开始,记录自己做的leetcode的题。 使用c# 第一次发博,本人大四实习生,水平有限。有错望海涵。思路括号有三种:[] 、{} 、() 空字符串为有效字符串括号之内可以包含括号字符串是对称的从左到右开始匹配括号,第一个匹配完成的括号一定是字符串最中间的那个使用栈,先放入第一个字符,之后判断接下来的字符与栈顶字符是否匹配,匹...原创 2018-09-11 10:57:46 · 637 阅读 · 0 评论 -
LeetCode 26.删除排序数组中的重复项 c#
删除排序数组中的重复项思路题目要求O(1)的额外空间,则用一个int变量即可用一个int记录不同的值的个数把数组第一个元素放入int变量,往后遍历,遇见不同的值将这个值放入int变量,并把这个值放在数组前面代码public class Solution { public int RemoveDuplicates(int[] nums) { if(nums.L...原创 2018-09-19 18:21:04 · 354 阅读 · 0 评论 -
LeetCode 27.移除元素 C#
移除元素思路遍历数组,遇见与val值不同的元素length++,并把这个值放在nums[length-1]处。也就是记录不需要删除的值的个数,并依次放在数组前面题干中的“原地”,既是原地算法,可百度。返回值覆盖输入值,在这个题也就相当于直接对传进来的nums进行修改,最后返回的值也是这个nums(此题返回的是nums的长度)代码public class Solution { ...原创 2018-09-20 10:09:37 · 248 阅读 · 0 评论 -
LeetCode 29.两数相除 C#
两数相除思路不能用乘除,那就用加法。加了多少次,次数就是商。用递归和二分法进行加操作,具体见代码数值溢出可用long类型来解决,通过判断long变量的值是否大于int.MaxValue,来决定返回值代码public class Solution { public int Divide(int dividend, int divisor) { bool ...原创 2018-09-26 10:16:49 · 346 阅读 · 0 评论