自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Random的博客

悄悄地进村,打枪地不要。

  • 博客(59)
  • 收藏
  • 关注

原创 奇偶链表

给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。请尝试使用原地算法完成。你的算法的空间复杂度应为 O(1),时间复杂度应为 O(nodes),nodes 为节点总数。示例 1:输入: 1->2->3->4->5->NULL输出: 1->3->5->...

2019-08-31 01:13:01 264

原创 递增的三元子序列

给定一个未排序的数组,判断这个数组中是否存在长度为 3 的递增子序列。数学表达式如下:如果存在这样的i, j, k,且满足0 ≤i<j<k≤n-1,使得arr[i]<arr[j]<arr[k],返回 true ;否则返回 false 。说明:要求算法的时间复杂度为 O(n),空间复杂度为 O(1) 。示例 1:输...

2019-08-28 00:35:43 193

原创 最长回文子串

给定一个字符串s,找到s中最长的回文子串。你可以假设s的最大长度为 1000。示例 1:输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。示例 2:输入: "cbbd"输出: "bb"分析: 回文就是左右对称的字符串,我们只需要将每一个字母都进行对称性比较,最后将最长的字符串取出来就得到了结果。 对称有两种,...

2019-08-27 00:09:20 228

原创 无重复字符的最长子串

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

2019-08-26 01:34:40 71

原创 字谜分组

给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。示例:输入: ["eat", "tea", "tan", "ate", "nat", "bat"],输出:[ ["ate","eat","tea"], ["nat","tan"], ["bat"]]说明:所有输入均为小写字母。 不考虑答案输出的顺序。分析: ...

2019-08-24 00:53:14 185 1

原创 leetcode中C++内部提供的函数汇总

在刷leetcode的时候,经常就发现别人的代码有很多自带的函数,而自己根本不知道,这就有点不爽了,下面是我目前刷题遇到的一些函数,持续更新。----------------------------强行分割线---------------------------数组 在数组的最开始插入一个元素,比如数字 1digits.insert(digits.begin...

2019-08-24 00:51:20 4133 2

原创 矩阵置零

给定一个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,5...

2019-08-22 00:18:18 192

原创 斐波那契数

斐波那契数,通常用F(n)表示,形成的序列称为斐波那契数列。该数列由0和1开始,后面的每一项数字都是前面两项数字的和。也就是:F(0) = 0, F(1)= 1F(N) = F(N - 1) + F(N - 2), 其中 N > 1.给定N,计算F(N)。示例 1:输入:2输出:1解释:F(2) = F(1) + F(0) = 1 + ...

2019-08-21 00:07:22 283

原创 第K个语法符号

在第一行我们写上一个0。接下来的每一行,将前一行中的0替换为01,1替换为10。给定行数N和序数K,返回第N行中第K个字符。(K从1开始)例子:输入: N = 1, K = 1输出: 0输入: N = 2, K = 1输出: 0输入: N = 2, K = 2输出: 1输入: N = 4, K = 5输出: 1解释:第一行: 0第二行: 01...

2019-08-20 00:25:07 593

原创 Pow(x, n)

实现pow(x,n),即计算 x 的 n 次幂函数。示例 1:输入: 2.00000, 10输出: 1024.00000示例2:输入: 2.10000, 3输出: 9.26100示例3:输入: 2.00000, -2输出: 0.25000解释: 2-2 = 1/22 = 1/4 = 0.25说明:-100.0 <x< 10...

2019-08-14 01:21:46 167

原创 合并两个有序链表

将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4分析: 依次找到两个链表中的最小值,最后返回/** * Definition for singly-linked list. * st...

2019-08-13 02:10:17 300

原创 windows下iPad插上电脑iTunes没反应

windows下iPad插上电脑iTunes没反应

2019-08-12 08:47:42 4823

原创 二叉树的最大深度

给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明:叶子节点是指没有子节点的节点。示例:给定二叉树[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最大深度3 。分析: 1.使用递归,根据左右节点往下走,每次深度+1,当走到空节点...

2019-08-12 00:55:16 164

原创 反转链表

反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?分析: 使用遍历,一次反转/** * Definition for singly-linked list. * struc...

2019-08-12 00:32:19 70

原创 寻找数组的中心索引

给定一个整数类型的数组nums,请编写一个能够返回数组“中心索引”的方法。我们是这样定义数组中心索引的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和。如果数组不存在中心索引,那么我们应该返回 -1。如果数组有多个中心索引,那么我们应该返回最靠近左边的那一个。示例 1:输入: nums = [1, 7, 3, 6, 5, 6]输出: 3解释: 索引3 (nu...

2019-08-05 01:22:41 654

原创 leetcode 88. 合并两个有序数组 C++版

给定两个有序整数数组nums1和nums2,将nums2合并到nums1中,使得num1成为一个有序数组。说明:初始化nums1和nums2的元素数量分别为m和n。 你可以假设nums1有足够的空间(空间大小大于或等于m + n)来保存nums2中的元素。示例:输入:nums1 = [1,2,3,0,0,0], m = 3nums2 ...

2019-08-05 01:22:18 470

原创 leetcode 21. 合并两个有序链表 C++版

将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4分析: 首先我想到的是l2插入到l1里面,并且使用前插法,使用前插法就需要一个头节点,我命名为Boss,boss->next = l1 进行链...

2019-08-05 01:22:12 1184 2

原创 leetcode 删除链表的倒数第N个节点 C++

给定一个链表,删除链表的倒数第n个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的n保证是有效的。进阶:你能尝试使用一趟扫描实现吗?分析: 关键是找到倒数第n个节点,所以这里我首先就使rea...

2019-08-05 01:22:07 932

原创 leetcode 48. 旋转图像 C++

给定一个n×n的二维矩阵表示一个图像。将图像顺时针旋转 90 度。说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例 1:给定 matrix = [ [1,2,3], [4,5,6], [7,8,9]],原地旋转输入矩阵,使其变为:[ [7,4,1], [8,5,2], [9,6,3...

2019-08-05 01:22:01 687

原创 Leetcode 36. 有效的数独 C++

判断一个9x9 的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。数字1-9在每一行只能出现一次。 数字1-9在每一列只能出现一次。 数字1-9在每一个以粗实线分隔的3x3宫内只能出现一次。上图是一个部分填充的有效的数独。数独部分空格内已填入了数字,空白格用'.'表示。示例1:输入:[ ["5","3",".",".","...

2019-08-05 01:21:55 623

原创 283 移动零

给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明:必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。分析: 题目就是说把前面的零全部用后面的数字填上就行了,要填上为零的数字并且要保持相对位置不变,我就想到前后指针,head指向当前...

2019-08-05 01:21:38 150

原创 leetcode C语言版 237. 删除链表中的节点

请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。现有一个链表 --head =[4,5,1,9],它可以表示为: 4 -> 5 -> 1 -> 9示例 1:输入: head = [4,5,1,9], node = 5输出: [4,1,9]解释: 给定你链表中值为5的第二个节点,那么在调用了你的函数之...

2019-08-05 01:21:31 416

原创 leetcode C语言版 第142. 环形链表 II

给定一个链表,返回链表开始入环的第一个节点。如果链表无环,则返回null。说明:不允许修改给定的链表。进阶:你是否可以不用额外空间解决此题?分析:我最开始想的是通过修改value值来判断是否相遇,后来看见题目规定不能修改,遂凉凉。用快慢指针解答,至于为什么能够相遇,我也没仔细看,详情见博客点击打开链接,他是用的java,本人用的C。声明:代码难免有不足之处,持续...

2019-08-05 01:21:21 800

原创 杨辉三角

给定一个非负整数numRows,生成杨辉三角的前numRows行。在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 5输出:[ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1]]分析:后一行result[i][j] = result[i-1][j-1]+result[i-1][j]...

2019-08-05 01:21:06 299

原创 1131. 绝对值表达式的最大值

给你两个长度相等的整数数组,返回下面表达式的最大值:|arr1[i] - arr1[j]| + |arr2[i] - arr2[j]| + |i - j|其中下标 i,j 满足0 <= i, j < arr1.length。示例 1:输入:arr1 = [1,2,3,4], arr2 = [-1,4,5,6]输出:13示例 2:输入:arr1 = [1,...

2019-08-05 01:21:00 550

原创 实现strStr()

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

2019-08-05 01:20:53 61

原创 最长公共前缀

编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。示例1:输入: ["flower","flow","flight"]输出: "fl"示例2:输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。说明:所有输入只包含小写字母a-z。class Solution {p...

2019-08-05 01:20:45 113

原创 Leetcode反转字符串C++

反转字符串请编写一个函数,其功能是将输入的字符串反转过来。示例:输入:s = "hello"返回:"olleh"老版领扣:class Solution {public: string reverseString(string s) { char temp; int head = 0; int rear = s...

2019-08-05 01:20:36 414

原创 移除元素

给定一个数组nums和一个值val,你需要原地移除所有数值等于val的元素,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且 nums 中的前...

2019-08-05 01:20:27 109

原创 最大连续1的个数

给定一个二进制数组, 计算其中最大连续1的个数。示例 1:输入: [1,1,0,1,1,1]输出: 3解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3.注意:输入的数组只包含0和1。 输入数组的长度是正整数,且不超过 10,000。class Solution {public: int findMaxConsecutiveOnes(v...

2019-08-05 01:20:20 518

原创 长度最小的子数组

给定一个含有n个正整数的数组和一个正整数s ,找出该数组中满足其和≥ s的长度最小的连续子数组。如果不存在符合条件的连续子数组,返回 0。示例:输入: s = 7, nums = [2,3,1,2,4,3]输出: 2解释: 子数组[4,3]是该条件下的长度最小的连续子数组。进阶:如果你已经完成了O(n) 时间复杂度的解法, 请尝试O(nlogn) 时间...

2019-08-05 01:20:13 317

原创 杨辉三角 II

给定一个非负索引k,其中k≤33,返回杨辉三角的第k行。在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 3输出: [1,3,3,1]进阶:你可以优化你的算法到O(k) 空间复杂度吗?分析: 可以将整个杨辉三角算出来 杨辉三角有一个性质,第m排的第n个数字是Cmn,m是下标,n是上标,但是这么算会超过int最大数...

2019-08-05 01:20:08 127

原创 翻转字符串里的单词

给定一个字符串,逐个翻转字符串中的每个单词。示例 1:输入: "the sky is blue"输出:"blue is sky the"示例 2:输入: " hello world! "输出:"world! hello"解释: 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。示例 3:输入: "a good examp...

2019-08-05 01:20:02 60

原创 反转字符串中的单词 III

给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。示例1:输入: "Let's take LeetCode contest"输出: "s'teL ekat edoCteeL tsetnoc"注意:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格。分析: // 每个单词分割出来,倒过来放,再全部倒过来,...

2019-08-05 01:19:54 320

原创 删除排序数组中的重复项

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

2019-08-05 01:19:42 67

原创 爬楼梯

假设你正在爬楼梯。需要n阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定n是一个正整数。示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶示例 2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。1. 1 阶 + 1 阶 + 1 阶2. ...

2019-08-05 01:19:35 249

原创 最大子序和

给定一个整数数组nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释:连续子数组[4,-1,2,1] 的和最大,为6。进阶:如果你已经实现复杂度为 O(n) 的解法,尝试使用更为精妙的分治法求解。分析: 1. 暴力遍历每一种可能,会超时...

2019-08-05 01:19:28 79

原创 打家劫舍

你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。示例 1:输入: [1,2,3,1]输出: 4解释: 偷窃 1 号房屋 (金额 = 1) ,然后偷窃...

2019-08-05 01:19:21 206

原创 3的幂

给定一个整数,写一个函数来判断它是否是 3的幂次方。示例 1:输入: 27输出: true示例 2:输入: 0输出: false示例 3:输入: 9输出: true示例 4:输入: 45输出: false进阶:你能不使用循环或者递归来完成本题吗?分析: 1.使用循环,每次除以3 2.使用递归,每次除以...

2019-08-05 01:19:15 148

原创 罗马数字转整数

罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做II,即为两个并列的 1...

2019-08-05 01:19:05 86

空空如也

空空如也

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

TA关注的人

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