LeetCode
LeiiY_OvO
懒/宅/码农进化中
展开
-
LeetCode(23)合并K个排序链表
题目描述:合并k个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。示例:输入:[ 1->4->5, 1->3->4, 2->6]输出: 1->1->2->3->4->4->5->6暴力了,把所有节点的值存到一个数组里排序重新建立一个链表==OvO==class ...原创 2019-04-17 20:14:12 · 136 阅读 · 0 评论 -
LeetCode(22)括号生成
题目描述:给出n代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。例如,给出n=3,生成结果为:[ "((()))", "(()())", "(())()", "()(())", "()()()"]class Solution {vector<string> res; public: ...原创 2019-04-17 20:00:18 · 136 阅读 · 0 评论 -
LeetCode(14)最长公共前缀
题目描述:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。示例1:输入: ["flower","flow","flight"]输出: "fl"示例2:输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。就暴力嘛,以第一个字符串作样本与其他串匹配,直到不相同。cl...原创 2019-04-07 21:40:18 · 129 阅读 · 0 评论 -
LeetCode(13)罗马数字转整数
题目描述:给定一个罗马数字,将其转换成整数。输入确保在 1到 3999 的范围内。示例1:输入:"III"输出: 3示例2:输入:"IV"输出: 4示例3:输入:"IX"输出: 9示例4:输入:"LVIII"输出: 58解释: L = 50, V= 5, III = 3.示例5:输入:"MCM...原创 2019-04-07 21:28:00 · 121 阅读 · 0 评论 -
LeetCode(12)整数转罗马数字
题目描述:罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做II,即为...原创 2019-04-07 21:04:27 · 100 阅读 · 0 评论 -
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-07 20:08:36 · 108 阅读 · 0 评论 -
LeetCode(9)回文数
题目描述:判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例 1:输入: 121输出: true示例2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入: 10输出: false解释: 从右向左读, 为 0...原创 2019-04-07 16:33:15 · 152 阅读 · 1 评论 -
LeetCode(8)字符串转整数
题目描述:请你来实现一个atoi函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。该字符串除了有效的整数部分之后也可能会存在多余的字...原创 2019-04-07 14:56:12 · 89 阅读 · 0 评论 -
LeetCode(7)整数反转
题目描述:给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:2^31-1 = 2147483647-2^31 = -2147483648注意溢出返回0就好了。int re...原创 2019-04-07 14:18:15 · 108 阅读 · 0 评论 -
LeetCode(6) Z字形变换
题目描述:将一个给定字符串根据给定的行数,以从上往下、从左到右进行Z 字形排列。比如输入字符串为"LEETCODEISHIRING"行数为 3 时,排列如下:L C I RE T O E S I I GE D H N之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"LCIRETOESIIGEDHN"。请你实现这个将字符串...原创 2019-04-07 13:24:28 · 107 阅读 · 0 评论 -
LeetCode(5)最长回文子串
题目描述:给定一个字符串s,找到s中最长的回文子串。你可以假设s的最大长度为 1000。示例 1:输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。示例 2:输入: "cbbd"输出: "bb"#include<bits/stdc++.h>using namespace std;string l...原创 2019-04-06 19:45:01 · 122 阅读 · 0 评论 -
LeetCode(4)寻找两个有序数组的中位数
题目描述:给定两个大小为 m 和 n 的有序数组nums1和nums2。请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为O(log(m + n))。你可以假设nums1和nums2不会同时为空。示例 1:nums1 = [1, 3]nums2 = [2]则中位数是 2.0示例 2:nums1 = [1, 2]nums2 =...原创 2019-04-06 18:18:10 · 111 阅读 · 0 评论 -
LeetCode(3)无重复字符的最长子串
题目描述:给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例1:输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是"abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: "pwwkew"输出: 3...原创 2019-04-06 16:18:53 · 109 阅读 · 0 评论 -
LeetCode(1)两数之和
题目描述: 给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。样例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9...原创 2019-04-06 14:36:11 · 99 阅读 · 0 评论 -
LeetCode(2)两数相加
题目描述: 给出两个非空的链表用来表示两个非负的整数。其中它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字0之外这两个数都不会以0开头。样例: 输入:(2 -> 4 -> 3) + (5 -> 6 -> 4) 输出:7 -...原创 2019-04-06 14:25:39 · 129 阅读 · 0 评论 -
LeetCode(28)实现KMP算法
题目描述:给定一个haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回-1。示例 1:输入: haystack = "hello", needle = "ll"输出: 2示例 2:输入: haystack = "aaaaa", needle = "bba"...原创 2019-04-17 21:13:34 · 1049 阅读 · 0 评论