leetcode题目
YangLei253
这个作者很懒,什么都没留下…
展开
-
leetcode 35 搜索插入位置
题目描述给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。假设数组中无重复元素。题目来源:https://leetcode-cn.com/problems/search-insert-position解题思路典型的二分算法的应用。两个模板int bsearch_1(int l, int r){ whil...原创 2019-07-30 19:25:18 · 134 阅读 · 0 评论 -
leetcode 160 相交链表
题目描述编写一个程序,找到两个单链表相交的起始节点。题目来源:https://leetcode-cn.com/problems/intersection-of-two-linked-lists解题思路leetcode 链表题目中,链表结构体都是没有头结点的。每次我都会自动构造一个头结点。链表题目其实都不难,画画图基本都能够解出来。本题目比较难,而且该题目解题思路十分巧妙。...原创 2019-08-01 15:24:01 · 139 阅读 · 0 评论 -
leetcode 92 反转链表 II
题目描述反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。题目来源:https://leetcode-cn.com/problems/reverse-linked-list-ii解题思路leetcode 链表题目中,链表结构体都是没有头结点的。每次我都会自动构造一个头结点。链表题目其实都不难,画画图基本都能够解出来。请先查看 leetcode 206 反转链表 一题。...原创 2019-08-01 14:05:24 · 175 阅读 · 0 评论 -
leetcode 206 反转链表
题目描述反转一个单链表。题目来源:https://leetcode-cn.com/problems/reverse-linked-list解题思路leetcode 链表题目中,链表结构体都是没有头结点的。每次我都会自动构造一个头结点。链表题目其实都不难,画画图基本都能够解出来。本题目有两种思路。一种是构建一个新的链表头结点,每次从旧链表中取出第一个元素,将其放入新链表中的...原创 2019-08-01 12:26:44 · 136 阅读 · 0 评论 -
leetcode 24 两两交换链表中的节点
题目描述给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。题目来源:https://leetcode-cn.com/problems/swap-nodes-in-pairs解题思路leetcode 链表题目中,链表结构体都是没有头结点的。每次我都会自动构造一个头结点。链表题目其实都不难,画画图基本都能够解出来。...原创 2019-08-01 10:41:13 · 119 阅读 · 0 评论 -
leetcode 61 旋转链表
题目描述给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。题目来源:https://leetcode-cn.com/problems/rotate-list解题思路leetcode 链表题目中,链表结构体都是没有头结点的。每次我都会自动构造一个头结点。链表题目其实都不难,画画图基本都能够解出来。本题目使用双指针算法即可。定义两个指针 firs...原创 2019-08-01 10:21:56 · 110 阅读 · 0 评论 -
leetcode 83 删除排序链表中的重复元素
题目描述给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。题目来源:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list解题思路leetcode 链表题目中,链表结构体都是没有头结点的。每次我都会自动构造一个头结点。链表题目其实都不难,画画图基本都能够解出来。本题目比较简单。判断...原创 2019-08-01 10:09:28 · 125 阅读 · 0 评论 -
leetcode 19 删除链表的倒数第N个节点
题目描述给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。要求一趟扫描完成。题目来源:https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list解题思路leetcode 链表题目中,链表结构体都是没有头结点的。每次我都会自动构造一个头结点。链表题目其实都不难,画画图基本都能够解出来。本题...原创 2019-08-01 09:56:55 · 136 阅读 · 0 评论 -
leetcode 275 H指数 II
题目描述给定一位研究者论文被引用次数的数组(被引用次数是非负整数),数组已经按照升序排列。编写一个方法,计算出研究者的 h 指数。h 指数的定义: “h 代表“高引用次数”(high citations),一名科研人员的 h 指数是指他(她)的 (N 篇论文中)至多有 h 篇论文分别被引用了至少 h 次。(其余的 N - h 篇论文每篇被引用次数不多于 h 次。)"题目来源:https:/...原创 2019-07-31 23:43:21 · 275 阅读 · 0 评论 -
leetcode 287 寻找重复数
题目描述给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 n 之间(包括 1 和 n),可知至少存在一个重复的整数。假设只有一个重复的整数,找出这个重复的数。要求不能改变原数组。题目来源:https://leetcode-cn.com/problems/find-the-duplicate-number解题思路本题目属于比较难的二分算法的应用,这种题目虽然没有二段性...原创 2019-07-31 20:32:03 · 136 阅读 · 0 评论 -
leetcode 69 x的平方根
题目描述实现 int sqrt(int x) 函数。计算并返回 x 的平方根,其中 x 是非负整数。由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。题目来源:https://leetcode-cn.com/problems/sqrtx解题思路本题目有两种解法,一种是遍历判断,复杂度比较高;另一种则是二分算法。本题主要讲述二分算法的使用。两个模板int bsearc...原创 2019-07-23 09:50:12 · 197 阅读 · 0 评论 -
leetcode 300 最长上升子序列
题目描述给定一个无序的整数数组,找到其中最长上升子序列的长度。题目来源:https://leetcode-cn.com/problems/longest-increasing-subsequence解题思路本题目解题思路有多种,在此一一列举。基于深度搜索遍历所有的上升子序列,找到最长的子序列。这种方法比较简单,但是由于复杂度过高,不通过。// 在子序列前一个元素为 pre时,nu...原创 2019-08-04 22:39:58 · 240 阅读 · 0 评论 -
leetcode 72 编辑距离
题目描述给定两个单词 word1 和 word2,计算出将 word1 转换成 word2 所使用的最少操作数 。你可以对一个单词进行如下三种操作:插入一个字符删除一个字符替换一个字符题目来源:https://leetcode-cn.com/problems/edit-distance解题思路本题目典型的动态规划,动态规划属于十分难的算法题目。在完成动态规划题目时,主要掌...原创 2019-08-04 20:19:23 · 340 阅读 · 0 评论 -
leetcode 329 矩阵中的最长递增路径
题目描述给定一个整数矩阵,找出最长递增路径的长度。对于每个单元格,你可以往上,下,左,右四个方向移动。 你不能在对角线方向上移动或移动到边界外(即不允许环绕)。题目来源:https://leetcode-cn.com/problems/longest-increasing-path-in-a-matrix解题思路首先通过深度优先搜索很容易得到,从某个点开始的递增路径长度,从所有点中取...原创 2019-08-04 18:54:39 · 377 阅读 · 0 评论 -
leetcode 162 寻找峰值
题目描述峰值元素是指其值大于左右相邻值的元素。给定一个输入数组 nums,其中 nums[i]≠nums[i+1]nums[i] \neq nums[i+1]nums[i]̸=nums[i+1],找到峰值元素并返回其索引,假设 nums[−1]=nums[n]=−∞nums[-1] = nums[n] = -\inftynums[−1]=nums[n]=−∞。数组可能包含多个峰值,在这种...原创 2019-07-31 18:30:00 · 150 阅读 · 0 评论 -
leetcode 153 寻找旋转排序数组中的最小值
题目描述假设按照升序排序的数组在预先未知的某个点上进行了旋转。( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。请找出其中最小的元素。假设数组中不存在重复元素。题目来源:https://leetcode-cn.com/problems/find-minimum-in-rotated-sorted-array解题思路二分算法相关使用,请先跳...原创 2019-07-31 11:16:07 · 127 阅读 · 0 评论 -
leetcode 74 搜索二维矩阵
题目描述编写一个高效的算法来判断 m x n 矩阵中,是否存在一个目标值。该矩阵具有如下特性:每行中的整数从左到右按升序排列。每行的第一个整数大于前一行的最后一个整数。题目来源:https://leetcode-cn.com/problems/search-a-2d-matrix解题思路二分算法相关使用,请先跳转到 https://blog.csdn.net/YangLei253...原创 2019-07-31 00:02:20 · 175 阅读 · 0 评论 -
leetcode 34 在排序数组中查找元素的第一个和最后一个位置
题目描述给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值,返回 [-1, -1]。算法时间复杂度必须是 O(log n) 级别。解题思路二分算法相关使用,请先跳转到 https://blog.csdn.net/YangLei253/article/details/96917904 学习划分区间图。根据...原创 2019-07-30 20:20:23 · 127 阅读 · 0 评论 -
leetcode 47 全排列 II
题目描述给定一个可包含重复数字的序列,返回所有不重复的全排列。题目来源:https://leetcode-cn.com/problems/permutations-ii解题思路如果该序列不包含可重复数字,属于基本的深度搜索问题。定义一个数组表示序列中数字是否已选。对于深度搜索的每一层,尝试将序列中未选择数字选择,递归下去即可。这里简单写一下代码:vector<vector&...原创 2019-08-10 21:47:28 · 221 阅读 · 0 评论