自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Jessica的博客

程序媛的工作室

  • 博客(135)
  • 资源 (1)
  • 收藏
  • 关注

原创 【leetcode】28. 实现strStr()

题目:实现strStr()函数。给定一个haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回-1。示例 1:输入: haystack = "hello", needle = "ll"输出: 2示例 2:输入: haystack = "aaaaa", ...

2019-05-30 15:12:40 358

原创 【leetcode】16. 最接近的三数之和【数组】

题目:给定一个包括n个整数的数组nums和 一个目标值target。找出nums中的三个整数,使得它们的和与target最接近。返回这三个数的和。假定每组输入只存在唯一答案。例如,给定数组 nums = [-1,2,1,-4], 和 target = 1.与 target 最接近的三个数的和为 2. (-1 + 2 + 1 = 2).思路:首先我们将数组中的...

2019-05-17 10:02:13 273

原创 【leetcode】120. 三角形最小路径和【数组】【动态规划】

题目:给定一个三角形,找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。例如,给定三角形:[ [2], [3,4], [6,5,7], [4,1,8,3]]自顶向下的最小路径和为11(即,2+3+5+1= 11)。说明:如果你可以只使用O(n)的额外空间(n为三角形的总行数)来解决这个问题,那么你的算法会...

2019-05-16 10:21:59 225

原创 【leetcode】162. 寻找峰值【数组】【二分查找】

题目:峰值元素是指其值大于左右相邻值的元素。给定一个输入数组nums,其中nums[i] ≠ nums[i+1],找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回任何一个峰值所在位置即可。你可以假设nums[-1] = nums[n] = -∞。示例 1:输入: nums = [1,2,3,1]输出: 2解释: 3 是峰值元素,你的函数应该返回...

2019-05-16 09:53:53 244 1

原创 【leetcode】80. 删除排序数组中的重复项 II

题目:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例1:给定 nums = [1,1,1,2,2,3],函数应返回新长度 length = 5, 并且原数组的前五个元素被修改为 1, 1, 2, 2, 3 。你不需要考虑数组...

2019-05-15 11:30:43 100

原创 【leetcode】73. 矩阵置零

题目:给定一个mxn的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0。请使用原地算法。示例1:输入: [ [1,1,1], [1,0,1], [1,1,1]]输出: [ [1,0,1], [0,0,0], [1,0,1]]示例2:输入: [ [0,1,2,0], [3,4,5,2], [1,3,1...

2019-05-15 10:08:00 90

原创 【leetcode】54. 螺旋矩阵【数组】

题目:给定一个包含mxn个元素的矩阵(m行,n列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。示例1:输入:[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]输出: [1,2,3,6,9,8,7,4,5]示例2:输入:[ [1, 2, 3, 4], [5, 6, 7, 8], [9,10,11,1...

2019-05-14 09:44:28 276

原创 【leetcode】147. 对链表进行插入排序【链表】

题目:对链表进行插入排序。插入排序的动画演示如上。从第一个元素开始,该链表可以被认为已经部分排序(用黑色表示)。每次迭代时,从输入数据中移除一个元素(用红色表示),并原地将其插入到已排好序的链表中。插入排序算法:插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一个有序的输出列表。 每次迭代中,插入排序只从输入数据中移除一个待排序的元素,找到它在序列中适当的位置...

2019-05-13 10:05:27 95

原创 【leetcode】143. 重排链表【链表】

题目:给定一个单链表L:L0→L1→…→Ln-1→Ln ,将其重新排列后变为:L0→Ln→L1→Ln-1→L2→Ln-2→…你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例1:给定链表 1->2->3->4, 重新排列为 1->4->2->3.示例 2:给定链表 1->2->3->4-&gt...

2019-05-11 10:19:08 112

原创 【leetcode】92. 反转链表 II【链表】

题目:反转从位置m到n的链表。请使用一趟扫描完成反转。说明:1 ≤m≤n≤ 链表长度。示例:输入: 1->2->3->4->5->NULL, m = 2, n = 4输出: 1->4->3->2->5->NULL思路:先讨论特殊情况。其次,找到m,n所对应的链表的位置,用start,end标记...

2019-05-10 13:50:16 119

原创 【leetcode】86. 分隔链表【链表】

题目:给定一个链表和一个特定值x,对链表进行分隔,使得所有小于x的节点都在大于或等于x的节点之前。你应当保留两个分区中每个节点的初始相对位置。示例:输入: head = 1->4->3->2->5->2, x = 3输出: 1->2->2->4->3->5思路一:标志节点mark指向链表中第一个节点n...

2019-05-10 11:54:33 80

原创 【leetcode】82. 删除排序链表中的重复元素 II【链表】

题目:给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中没有重复出现的数字。示例1:输入: 1->2->3->3->4->4->5输出: 1->2->5示例2:输入: 1->1->1->2->3输出: 2->3思路:head头结点可能是重复的数值,因此需要再设置一...

2019-05-10 10:05:42 86

原创 【leetcode】72. 编辑距离【动态规划】

题目:给定两个单词word1和word2,计算出将word1转换成word2所使用的最少操作数。你可以对一个单词进行如下三种操作:插入一个字符 删除一个字符 替换一个字符示例1:输入: word1 = "horse", word2 = "ros"输出: 3解释: horse -> rorse (将 'h' 替换为 'r')rorse -&gt...

2019-05-09 09:56:16 130

原创 【leetcode】24. 两两交换链表中的节点【链表】

题目:给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例:给定 1->2->3->4, 你应该返回 2->1->4->3.代码:# Definition for singly-linked list.# class ListNode:# ...

2019-05-08 16:42:37 72

原创 【leetcode】173. 二叉搜索树迭代器

题目:实现一个二叉搜索树迭代器。你将使用二叉搜索树的根节点初始化迭代器。调用next()将返回二叉搜索树中的下一个最小的数。示例:BSTIterator iterator = new BSTIterator(root);iterator.next(); // 返回 3iterator.next(); // 返回 7iterator.hasNex...

2019-05-08 13:16:36 102

原创 【leetcode】71. 简化路径

题目:以 Unix 风格给出一个文件的绝对路径,你需要简化它。或者换句话说,将其转换为规范路径。在 Unix 风格的文件系统中,一个点(.)表示当前目录本身;此外,两个点 (..)表示将目录切换到上一级(指向父目录);两者都可以是复杂相对路径的组成部分。更多信息请参阅:Linux / Unix中的绝对路径 vs 相对路径请注意,返回的规范路径必须始终以斜杠/开头,并且两个目录名之...

2019-05-08 10:56:02 108

原创 【leetcode】230. 二叉搜索树中第K小的元素 & 【剑指Offer】54.二叉树的第K大节点

题目:给定一个二叉搜索树,编写一个函数kthSmallest来查找其中第k个最小的元素。说明:你可以假设 k 总是有效的,1 ≤ k ≤ 二叉搜索树元素个数。示例 1:输入: root = [3,1,4,null,2], k = 1 3 / \ 1 4 \ 2输出: 1示例 2:输入: root = [5,3,6,2,4,nul...

2019-04-22 19:21:40 547

原创 【leetcode】150. 逆波兰表达式求值【栈】

题目:根据逆波兰表示法,求表达式的值。有效的运算符包括+,-,*,/。每个运算对象可以是整数,也可以是另一个逆波兰表达式。说明:整数除法只保留整数部分。 给定逆波兰表达式总是有效的。换句话说,表达式总会得出有效数值且不存在除数为 0 的情况。示例1:输入: ["2", "1", "+", "3", "*"]输出: 9解释: ((2 + 1) * 3) = ...

2019-04-19 17:22:26 100

原创 【leetcode】20.有效的括号

题目:给定一个只包括'(',')','{','}','[',']'的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: "()"输出: true示例2:输入: "()[]{}"输出: true示例3:输入: "(]"输出: f...

2019-04-19 15:14:50 105

原创 【leetcode】83.删除排序链表中的重复元素

题目:给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例1:输入: 1->1->2输出: 1->2示例2:输入: 1->1->2->3->3输出: 1->2->3思路一:定义指针p指向起始节点。将P所指的当前节点值和其后继节点的值比较。如果当前节点值等于后继节点值,则删除后继节点;...

2019-04-19 11:15:11 96

原创 【剑指Offer】13.机器人的运动范围【回溯】

题目:地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38),因为3+5+3+8 = 19。请问该机器人能够达到多少个格子?代码:# -*- coding...

2019-04-18 19:58:36 117

原创 【leetcode】79. 单词搜索【回溯】& 【剑指Offer】12.矩阵中的路径

题目:给定一个二维网格和一个单词,找出该单词是否存在于网格中。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。示例:board =[ ['A','B','C','E'], ['S','F','C','S'], ['A','D','E','E']]给定 word = "...

2019-04-18 17:21:02 265

原创 【leetcode】264. 丑数 II & 【剑指Offer】49.丑数

题目:编写一个程序,找出第n个丑数。丑数就是只包含质因数2, 3, 5的正整数。示例:输入: n = 10输出: 12解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。说明:1是丑数。 n不超过1690。代码:class Solution: def nthUglyNumber(self, n: ...

2019-04-17 09:17:36 114

原创 【leetcode】63. 不同路径 II 【动态规划】

题目:一个机器人位于一个m x n网格的左上角 (起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径?网格中的障碍物和空位置分别用1和0来表示。说明:m和n的值均不超过 100。示例1:输入:...

2019-04-17 09:13:22 241

原创 【leetcode】263. 丑数

题目:编写一个程序判断给定的数是否为丑数。丑数就是只包含质因数2, 3, 5的正整数。示例 1:输入: 6输出: true解释: 6 = 2 ×3示例 2:输入: 8输出: true解释: 8 = 2 × 2 ×2示例3:输入: 14输出: false 解释: 14 不是丑数,因为它包含了另外一个质因数7。说明:1是丑数。...

2019-04-16 19:21:10 61

原创 【leetcode】62. 不同路径【动态规划】

题目:一个机器人位于一个m x n网格的左上角 (起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。问总共有多少条不同的路径?例如,上图是一个7 x 3 的网格。有多少可能的路径?说明:m和n的值均不超过 100。示例1:输入: m = 3, n = 2输出: 3...

2019-04-16 09:27:49 209

原创 【leetcode】78. 子集

题目:给定一组不含重复元素的整数数组nums,返回该数组所有可能的子集(幂集)。说明:解集不能包含重复的子集。示例:输入: nums = [1,2,3]输出:[ [3], [1], [2], [1,2,3], [1,3], [2,3], [1,2], []]思路:比如对于题目中给的例子[1,2,3]来说,最开始是空集,那么我们现在要...

2019-04-15 22:42:23 116 1

原创 【leetcode】11. 盛最多水的容器【数组】

题目:给定n个非负整数a1,a2,...,an,每个数代表坐标中的一个点(i,ai) 。在坐标内画n条垂直线,垂直线i的两个端点分别为(i,ai) 和 (i, 0)。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器,且n的值至少为 2。图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容...

2019-04-15 20:56:52 110

原创 【leetcode】846. 一手顺子

题目:爱丽丝有一手(hand)由整数数组给定的牌。现在她想把牌重新排列成组,使得每个组的大小都是W,且由W张连续的牌组成。如果她可以完成分组就返回true,否则返回false。示例 1:输入:hand = [1,2,3,6,2,3,4,7,8], W = 3输出:true解释:爱丽丝的手牌可以被重新排列为 [1,2,3],[2,3,4],[6,7,8]。...

2019-04-15 20:36:32 233

原创 【leetcode】3. 无重复字符的最长子串 & 【剑指Offer】48.最长不含重复字符的子字符串

题目:给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例1:输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: "pwwkew"输出: 3解释: 因为无重...

2019-04-15 09:58:39 189

原创 【leetcode】387. 字符串中的第一个唯一字符 & 【剑指Offer】50.第一个只出现一次的字符

题目:给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。案例:s = "leetcode"返回 0.s = "loveleetcode",返回 2.代码:class Solution: def firstUniqChar(self, s: str) -> int: dic = {} f...

2019-04-11 10:44:52 220

原创 【leetcode】34. 在排序数组中查找元素的第一个和最后一个位置&【剑指Offer】53.在排序数组中查找数字

题目:给定一个按照升序排列的整数数组nums,和一个目标值target。找出给定目标值在数组中的开始位置和结束位置。你的算法时间复杂度必须是O(logn) 级别。如果数组中不存在目标值,返回[-1, -1]。示例 1:输入: nums = [5,7,7,8,8,10], target = 8输出: [3,4]示例2:输入: nums = [5,7,...

2019-04-11 10:36:19 244

原创 【leetcode】31. 下一个排列

题目:实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。必须原地修改,只允许使用额外常数空间。以下是一些例子,输入位于左侧列,其相应输出位于右侧列。1,2,3→1,3,23,2,1→1,2,31,1,5→1,5,1代码:class Solution:...

2019-04-10 09:50:54 99

原创 【leetcode】64. 最小路径和 & 【剑指Offer】47.礼物的最大价值

题目:给定一个包含非负整数的mxn网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。说明:每次只能向下或者向右移动一步。示例:输入:[ [1,3,1], [1,5,1], [4,2,1]]输出: 7解释: 因为路径 1→3→1→1→1 的总和最小。代码:class Solution(object): def minP...

2019-04-09 16:43:32 355

原创 【leetcode】 91. 解码方法 & 【剑指Offer】 46.把数字翻译成字符串

题目:一条包含字母A-Z的消息通过以下方式进行了编码:'A' -> 1'B' -> 2...'Z' -> 26给定一个只包含数字的非空字符串,请计算解码方法的总数。示例 1:输入: "12"输出: 2解释:它可以解码为 "AB"(1 2)或者 "L"(12)。示例2:输入: "226"输出: 3解释:它可以解码为 "B...

2019-04-09 10:40:11 519

原创 【leetcode】179. 最大数 & 【剑指Offer】45.把数组排成最小的数

题目:给定一组非负整数,重新排列它们的顺序使之组成一个最大的整数。示例 1:输入: [10,2]输出: 210示例2:输入: [3,30,34,5,9]输出: 9534330说明:输出结果可能非常大,所以你需要返回一个字符串而不是整数。代码:class Solution(object): def largestNumber(self, n...

2019-04-09 09:38:49 197

原创 【剑指Offer42】连续子数组的最大和&【leetcode】53.最大子序和

题目:给定一个整数数组nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释:连续子数组[4,-1,2,1] 的和最大,为6。进阶:如果你已经实现复杂度为 O(n) 的解法,尝试使用更为精妙的分治法求解。代码:class Solution(obje...

2019-04-04 15:05:59 127

原创 【leetcode】5. 最长回文子串【Medium】【字符串】

题目:给定一个字符串s,找到s中最长的回文子串。你可以假设s的最大长度为 1000。示例 1:输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。示例 2:输入: "cbbd"输出: "bb"代码:class Solution(object): def longestPalindrome(self, s):...

2019-04-03 16:07:28 101

原创 【百度笔试】编程题2 字符串计数

题目:第一行一个字符串A。第二行一个字符串B。两个字符串保证均只含小写字母。(1<=|A|<=500000,1<=|A|<=100)第三行一个正整数Q,表示训练次数。(1<=|Q|<=100000)接下来m行每行两个整数l和r,表示一段区间。(1<= l<=r<=A)输出:共Q行,每行一个非负整数,表示出现的次数。样...

2019-04-03 10:22:34 387

转载 【Python】sort、sorted高级排序技巧

https://blog.csdn.net/jb19900111/article/details/50649932

2019-03-30 15:50:03 184

unity连接mysql工具包

其中提供了mysql-connector-net-8.0.12和mysql-connector-odbc-8.0.12-win64和mysql-for-visualstudio-1.2.8

2018-12-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除