Leetcode
佐晓佐
这个作者很懒,什么都没留下…
展开
-
LeetCode中等:旋转链表
LeetCode中等:旋转链表(C#)题目描述:给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。示例 1:输入: 1->2->3->4->5->NULL, k = 2输出: 4->5->1->2->3->NULL解释:向右旋转 1 步: 5->1->2->3->4-&g...原创 2020-03-11 18:58:56 · 137 阅读 · 0 评论 -
LeetCode中等: 旋转图像
LeetCode中等: 旋转图像(C#)题目描述:给定一个 n × n 的二维矩阵表示一个图像。将图像顺时针旋转 90 度。说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。思路:假设我们现在有一个4 * 4的矩阵,那么直观的来看就是需要将1移动到4,4移动到16,16移动到13,13移动到1,可以简单的表示为1-4-16-13-1。同...原创 2020-03-11 17:46:10 · 133 阅读 · 0 评论 -
LeetCode中等:下一个排列
LeetCode中等:下一个排列(C#)题目描述:实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。必须原地修改,只允许使用额外常数空间。以下是一些例子,输入位于左侧列,其相应输出位于右侧列。1,2,3 → 1,3,23,2,1 → 1,2,31,1,5 → 1,5,1思...原创 2020-03-03 19:43:44 · 128 阅读 · 0 评论 -
LeetCode中等:两两交换链表中的节点
LeetCode中等:两两交换链表中的节点(C#)题目描述:给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例:给定 1->2->3->4, 你应该返回 2->1->4->3.1.非递归方法思路:假设要交换的节点是N1,N2,那么应该执行以下操作:N1指向N2的下一节点,N...原创 2020-03-02 20:10:24 · 178 阅读 · 0 评论 -
LeetCode中等:删除链表的倒数第N个节点
LeetCode中等:删除链表的倒数第N个节点(C#)题目说明:给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。思路:这道题没什么好说的,快慢指针就行了,另外还需要注意的是要对N等于链表节点数的特殊情况进行处理。直接上代码了。publicListNode RemoveNthFromEnd(ListNode head, int n){ ListNode fas...原创 2020-03-02 17:06:13 · 95 阅读 · 0 评论 -
LeetCode中等:电话号码的字母组合
电话号码的字母组合(C#)给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。1.暴力法看到这道题的第一思路就是建哈希表,然后将数字转化为对应字母之后进行组合public IList<string> LetterCombinations(string digits){ Li...原创 2020-03-01 20:23:24 · 108 阅读 · 0 评论 -
LeetCode中等:字符串转换整数(atoi)
字符串转换整数(C#)题目描述:请你来实现一个 atoi 函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。该字符串除了有效的整数部分之后也可...原创 2020-02-29 18:31:11 · 149 阅读 · 1 评论 -
LeetCode中等:盛最多水的容器
盛最多水的容器(C#)题目描述:给定 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器,且 n 的值至少为 21.暴力法思路:遍历数组,找到面积最大的区域并保存。暴力法...原创 2020-02-29 17:44:33 · 93 阅读 · 0 评论 -
LeetCode中等:最长回文子串
最长回文子串(C#)题目描述:给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。暴力法思路:对所有子串遍历,判断是否为回文串。显然需要一个函数判断一个字符串是否为回文串public bool isPalindromic(string s){ for (int i = 0; i < s.Length / 2; i++) { ...原创 2020-01-01 12:30:47 · 139 阅读 · 0 评论