![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
神化我
活到老,码到老
展开
-
1.两数之和-LeetCode
题目描述:给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。实例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]实现代码和测试代码:#define _CRT_SECURE_NO_DE...原创 2018-10-31 21:11:03 · 424 阅读 · 0 评论 -
【LeetCode】17. 电话号码的字母组合
给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例:输入:"23"输出:["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"].说明:尽管上原创 2018-12-05 23:01:08 · 95 阅读 · 0 评论 -
【LeetCode】136. 只出现一次的数字
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4class Solution {public: int singleNumber(ve...原创 2018-12-05 22:44:30 · 115 阅读 · 0 评论 -
【LeetCode】557. 反转字符串中的单词 III
给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。示例 1:输入: "Let's take LeetCode contest"输出: "s'teL ekat edoCteeL tsetnoc" 注意:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格。#define _CRT_SECURE_NO_DEPRECATE 1...原创 2018-12-05 17:33:14 · 95 阅读 · 0 评论 -
【LeetCode】541.翻转字符串II:区间部分翻转
给定一个字符串和一个整数 k,你需要对从字符串开头算起的每个 2k 个字符的前k个字符进行反转。如果剩余少于 k 个字符,则将剩余的所有全部反转。如果有小于 2k 但大于或等于 k 个字符,则反转前 k 个字符,并将剩余的字符保持原样。示例:输入: s = "abcdefg", k = 2输出: "bacdfeg"要求:该字符串只包含小写的英文字母。 给定字符串的长度和 k...原创 2018-12-05 17:33:24 · 221 阅读 · 0 评论 -
【LeetCode】415. 字符串相加
给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。注意:num1 和num2 的长度都小于 5100. num1 和num2 都只包含数字 0-9. num1 和num2 都不包含任何前导零。 你不能使用任何內建 BigInteger 库, 也不能直接将输入的字符串转换为整数形式。#include <algorithm>#include<io...原创 2018-12-04 15:45:42 · 82 阅读 · 0 评论 -
【LeetCode】387. 字符串中的第一个唯一字符
给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。案例:s = "leetcode"返回 0.s = "loveleetcode",返回 2. 注意事项:您可以假定该字符串只包含小写字母。位图思想时间复杂度较小:o(n)#define _CRT_SECURE_NO_DEPRECATE 1#include<i...原创 2018-12-04 15:43:23 · 110 阅读 · 0 评论 -
【LeetCode】344. 反转字符串
编写一个函数,其作用是将输入的字符串反转过来。示例 1:输入: "hello"输出: "olleh"示例 2:输入: "A man, a plan, a canal: Panama"输出: "amanaP :lanac a ,nalp a ,nam A"#define _CRT_SECURE_NO_DEPRECATE 1#include<iostream&g...原创 2018-12-04 15:31:33 · 104 阅读 · 0 评论 -
19. 删除链表的倒数第N个节点--LeetCode
题目描述示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n 保证是有效的。进阶:你能尝试使用一趟扫描实现吗?直接上进阶版代码和测试代码---在LeetCode上已测试并提交#define _CRT_SECURE_NO_DEPR...原创 2018-11-03 20:03:10 · 120 阅读 · 0 评论 -
【LeetCode】125. 验证回文串
给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。说明:本题中,我们将空字符串定义为有效的回文串。示例 1:输入: "A man, a plan, a canal: Panama"输出: true示例 2:输入: "race a car"输出: false#include<iostream>#include<al...原创 2018-12-04 15:26:39 · 149 阅读 · 0 评论 -
3. 无重复字符的最长子串---LeetCode
看到这道题的时候我脑子都大了,我以前从来没做过这道题,不会怎么办?显然,不会找度娘呗!!我在网上查了好久,见识了很多大神的解法,最让我痴迷的是一种用位图思想求解的。老实说,虽然这个思想时间复杂度比较高,但思路很清晰,我把这个方法分享给大家,望共勉!!先来看下LeetCode的题目描述(比较懒,直接上截图):说说思路:先举个例:找一个包含很多特殊情况的字符串s = "pwwkew...原创 2018-11-14 18:05:05 · 106 阅读 · 0 评论 -
4. 两个排序数组的中位数---LeetCode
题目描述:给定两个大小为 m 和 n 的有序数组 nums1 和 nums2 。请找出这两个有序数组的中位数。要求算法的时间复杂度为 O(log (m+n)) 。你可以假设 nums1 和 nums2 不同时为空。示例 1:nums1 = [1, 3]nums2 = [2]中位数是 2.0示例 2:nums1 = [1, 2]nums2 = [3, 4]...原创 2018-11-15 22:53:30 · 98 阅读 · 0 评论 -
5. 最长回文子串---LeetCode
题目描述:给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为1000。示例 1:输入: "babad"输出: "bab"注意: "aba"也是一个有效答案。示例 2:输入: "cbbd"输出: "bb"第一种方法:暴力破解法时间复杂度:O(n^3)思想:找到所有的子串,判断是否为回文子串,找到最长的会问子串找子串,需要两层循...原创 2018-11-16 19:33:56 · 189 阅读 · 0 评论 -
43. 字符串相乘-两个极大整数乘法
#define _CRT_SECURE_NO_DEPRECATE 1#include<iostream>#include<string>using namespace std;class Solution{public: string multiply(string num1, string num2){ if (num1.size() == 1 &a...原创 2018-12-03 16:34:06 · 165 阅读 · 0 评论 -
6. Z字形变换---LeetCode
题目描述:将字符串 "PAYPALISHIRING" 以Z字形排列成给定的行数:P A H NA P L S I I GY I R之后从左往右,逐行读取字符:"PAHNAPLSIIGYIR"实现一个将字符串进行指定行数变换的函数:string convert(string s, int numRows);示例 1:输入: s = "PAY...原创 2018-11-17 23:05:15 · 121 阅读 · 0 评论 -
2.两数相加--LeetCode
题目描述给定两个非空链表来表示两个非负整数。位数按照逆序方式存储,它们的每个节点只存储单个数字。将两数相加返回一个新的链表。你可以假设除了数字 0 之外,这两个数字都不会以零开头。输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -> 8原因:342 + 465 = 807代码和测试#define _...原创 2018-11-03 18:58:43 · 134 阅读 · 0 评论 -
【LeetCode】7. 整数反转
题目描述:给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例 1:输入: 123输出: 321 示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就...原创 2018-12-19 21:45:51 · 126 阅读 · 0 评论