LeetCode
暖暖的纠结
ECIT
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
leetcode:无重复字符的最长子串
题目 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。 示例 2: 输入: “bbbbb” 输出: 1 解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。 示例 3: 输入: “pwwkew” 输出: 3 解释: 因为无重复字符的最长子串是 “wke...原创 2020-01-16 10:18:00 · 305 阅读 · 0 评论 -
LeetCode--初级算法--数组篇-旋转数组
题目 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。 示例 1: 输入: [1,2,3,4,5,6,7] 和 k = 3 输出: [5,6,7,1,2,3,4] 解释: 向右旋转 1 步: [7,1,2,3,4,5,6] 向右旋转 2 步: [6,7,1,2,3,4,5] 向右旋转 3 步: [5,6,7,1,2,3,4] 示例 2: 输入: [-1,-100,3,99] ...原创 2018-12-13 10:46:30 · 246 阅读 · 0 评论 -
LeetCode--初级算法--数组篇-存在重复
题目 给定一个整数数组,判断是否存在重复元素。 如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都不相同,则返回 false。 示例 1: 输入: [1,2,3,1] 输出: true 示例 2: 输入: [1,2,3,4] 输出: false 示例 3: 输入: [1,1,1,3,3,4,3,2,4,2] 输出: true 解析: 直接暴力一点,采用for循环,增加了...原创 2018-12-14 09:13:29 · 331 阅读 · 0 评论 -
LeetCode--初级算法--数组篇-只出现一次的数字
题目 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 示例 1: 输入: [2,2,1] 输出: 1 示例 2: 输入: [4,1,2,1,2] 输出: 4 分析 这个题目其实就只找出某一项与数组中的每一项都不相同。我们需要找出这个项得索引。定义为oneInde...原创 2018-12-15 22:56:15 · 232 阅读 · 0 评论 -
LeetCode--数组类算法:两个数组的交集 II
题目: 给定两个数组,编写一个函数来计算它们的交集。 示例 1: 输入: nums1 = [1,2,2,1], nums2 = [2,2] 输出: [2,2] 示例 2: 输入: nums1 = [4,9,5], nums2 = [9,4,9,8,4] 输出: [4,9] 说明: 输出结果中每个元素出现的次数,应与元素在两个数组中出现的次数一致。 我们可以不考虑输出结果的顺序。 进阶: 如果给...原创 2018-12-28 10:49:02 · 270 阅读 · 0 评论 -
LeetCode--初级算法--数组篇--买卖股票的最佳时机 II
题目 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。 注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 示例 1: 输入: [7,1,5,3,6,4] 输出: 7 解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交...原创 2018-12-12 10:23:07 · 284 阅读 · 0 评论 -
LeetCode--初级算法--数组篇-加一
题目 给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。 最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。 你可以假设除了整数 0 之外,这个整数不会以零开头。 示例1: 输入: [1,2,3] 输出: [1,2,4] 解释: 输入数组表示数字 123。 示例1: 输入: [4,3,2,1] 输出: [4,3,2,2] 解释: 输入数组表示数字 4321。 解法: ...原创 2018-12-24 15:29:10 · 329 阅读 · 0 评论 -
LeetCode--数组类算法:删除排序数组中的重复项 II
题目 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 示例一: 给定 nums = [1,1,1,2,2,3], 函数应返回新长度 length = 5, 并且原数组的前五个元素被修改为 1, 1, 2, 2, 3 。 你不需要考虑数组中超出新长度后...原创 2018-12-26 09:53:55 · 178 阅读 · 0 评论 -
LeetCode--初级算法--字符串类算法
反转字符串 题目: 编写一个函数,其作用是将输入的字符串反转过来。 示例 1: 输入: "hello" 输出: "olleh" 示例 2: 输入: "A man, a plan, a canal: Panama" 输出: "amanaP :lanac a ,nalp a ,nam A" 代码: char* reverseString(char* s) { int leng = ...原创 2019-01-02 11:15:26 · 292 阅读 · 0 评论 -
LeetCode--初级算法--字符串转换整数
字符串转换整数 (atoi) 请你来实现一个 atoi 函数,使其能将字符串转换成整数。 首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。 当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。 该字符串除了有效的整数部分之后也可能会存...原创 2019-02-22 15:22:49 · 314 阅读 · 0 评论 -
LeetCode--初级算法--实现strStr()
实现strStr() 实现 strStr() 函数。 给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。 示例 1: 输入: haystack = “hello”, needle = “ll” 输出: 2 示例 2: 输入: haystack = “aaaaa”, ne...原创 2019-02-23 10:58:59 · 233 阅读 · 0 评论 -
LeetCode--初级算法--字符串类算法:验证回文字符串
验证回文字符串 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。 说明:本题中,我们将空字符串定义为有效的回文串。 示例一 输入: “A man, a plan, a canal: Panama” 输出: true 示例二 输入: “race a car” 输出: false 算法分析: 首先将字符串的所有大写转换为小写。 编写一个函数,判断字符是否是字母和数字字...原创 2019-02-21 09:47:24 · 226 阅读 · 0 评论 -
LeetCode--初级算法--反转链表
参考:反转链表的方法 反转一个单链表。 示例 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 进阶: 你可以迭代或递归地反转链表。你能否用两种方法解决这道题? 分析: 反转单链表的方法: 方法1: 将单链表储存为数组,然后按照数组的索引逆序进行反转。 比较浪费空间 时间复杂度:O(N) 空...原创 2019-04-04 10:46:45 · 299 阅读 · 0 评论 -
LeetCode--初级算法--回文链表
题目 请判断一个链表是否为回文链表。 示例 1: 输入: 1->2 输出: false 示例 2: 输入: 1->2->2->1 输出: true 进阶: 你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题? 解题方法 其实,链表的题目很大一部分都可以采用转换为数组的形式求解。如,这题: 采用数组,先遍历整个链表,用数组将链表中的数据存储下来,这样就变成了回文数...原创 2019-04-10 11:33:29 · 303 阅读 · 1 评论 -
LeetCode--初级算法--环形链表
题目 给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。 示例 1: 输入:head = [3,2,0,-4], pos = 1 输出:true 解释:链表中有一个环,其尾部连接到第二个节点。 示例 2: 输入:head = [1,2], pos = 0 输出:tr...原创 2019-04-11 19:47:23 · 318 阅读 · 0 评论
分享