![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
Gerald Kwok
低到尘埃里,才能开出花来。
展开
-
LeetCode.只出现一次的数 I 、II 、 III
只出现一次的数,三种题型 1.只出现一次的数I 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 示例 1: 输入: [2,2,1] 输出: 1 示例 2: 输入: [4,1,2,1,2] 输出: 4 这道题很简单,将数组中所有的数字挨个抑或就行,因为两个相同的数...原创 2019-03-29 16:45:38 · 100 阅读 · 0 评论 -
LeetCode.50 Pow(x, n)
LeetCode.50 Pow(x, n) 题目描述:实现 pow(x, n) ,即计算 x 的 n 次幂函数。 这道题如果你非要return pow(x, n)那你就可跳过这篇伟大的博客了。哼! 解题思路: 我再做这道题的时候先用的是这种方法: class Solution { public: double myPow(double x, int n) ...原创 2019-03-26 17:13:22 · 89 阅读 · 0 评论 -
简单的链表OJ题
简单的链表面试题 1.逆置单链表 解题思路:将原链表进行头删,并对新链表进行头插。 源代码: ListNode *reverseList(ListNode *head) { if (head == NULL) return NULL; struct ListNode *new_head = NULL; struct ListNode *cur = NULL; //头删和头插 w...原创 2019-01-25 19:06:58 · 925 阅读 · 0 评论 -
leetcode 23.合并K个排序链表
leetcode 23.合并K个排序链表 题目描述: 合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。 示例: 输入: [ 1->4->5, 1->3->4, 2->6 ] 输出: 1->1->2->3->4->4->5->6 解题思路: 你是否还记得这道题的简单版本《LeetCode 21...原创 2019-04-09 20:08:16 · 247 阅读 · 0 评论 -
链表 双指针技巧
链表 双指针技巧 在我们做题中,若只是一个指针遍历链表可能无法达到我们的需求。那么我们就可以定义两个指针,例如本篇博客要引入的双指针。主要是一个快指针,一个慢指针,来解决问题。 来,我们主要从一些题中来体会这种方法的精妙之处。 环形链表 题目描述: 给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos ...原创 2019-04-27 19:35:18 · 2764 阅读 · 0 评论 -
LeetCode 430. 扁平化多级双向链表
LeetCode 430. 扁平化多级双向链表 题目描述: 您将获得一个双向链表,除了下一个和前一个指针之外,它还有一个子指针,可能指向单独的双向链表。这些子列表可能有一个或多个自己的子项,依此类推,生成多级数据结构,如下面的示例所示。 扁平化列表,使所有结点出现在单级双链表中。您将获得列表第一级的头部。 示例: 输入: 1---2---3---4---5---6--NULL ...原创 2019-04-27 19:50:05 · 283 阅读 · 0 评论 -
LeetCode.215 数组中的第K个最大元素
LeetCode.215 数组中的第K个最大元素 题目描述 在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 示例 1: 输入: [3,2,1,5,6,4] 和 k = 2 输出: 5 示例 2: 输入: [3,2,3,1,2,4,5,5,6] 和 k = 4 输出: 4 说明: 你可以假设 k 总是有效的,且 1 ≤...原创 2019-04-24 10:28:56 · 203 阅读 · 0 评论 -
LeetCode 209. 长度最小的子数组(双指针法)
LeetCode 209. 长度最小的子数组(双指针法) 题目描述: 给定一个含有 n 个正整数的数组和一个正整数 **s ,找出该数组中满足其和 ≥ s 的长度最小的连续子数组。**如果不存在符合条件的连续子数组,返回 0。 示例: 输入: s = 7, nums = [2,3,1,2,4,3] 输出: 2 解释: 子数组 [4,3] 是该条件下的长度最小的连续子数组。 进阶: 如果你已经完成...原创 2019-05-05 17:04:11 · 505 阅读 · 0 评论