
leetCode
lpl312905509
这个作者很懒,什么都没留下…
展开
-
每天一道leetCode题--19--删除排序数组中的重复项 II
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例 1:给定 nums = [1,1,1,2,2,3],函数应返回新长度 length = 5, 并且原数组的前五个元素被修改为 1, 1, 2, 2, 3 。你不需要考虑数组中超出新长度后面的元素...原创 2020-02-07 10:39:07 · 115 阅读 · 0 评论 -
每天一道leetCode题--19--删除链表的倒数第N个节点
给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n 保证是有效的。进阶:你能尝试使用一趟扫描实现吗?/* * @lc app=leetcode.cn id=19 lang=c *...原创 2020-02-06 09:36:03 · 132 阅读 · 0 评论 -
每天一道leetCode题--88--合并两个有序数组
/* * @lc app=leetcode.cn id=88 lang=c * * [88] 合并两个有序数组 */// @lc code=startvoid merge(int* nums1, int nums1Size, int m, int* nums2, int nums2Size, int n){ int pos1 = 0; int pos2 = 0;...原创 2020-02-05 10:20:54 · 146 阅读 · 0 评论 -
每天一道leetCode题--3--无重复字符的最长子串
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所...原创 2020-02-04 11:14:25 · 163 阅读 · 0 评论 -
每天一道leetCode题--7--整数反转
给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例 1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。/* * @lc app=le...原创 2020-02-02 21:29:48 · 131 阅读 · 0 评论 -
每天一道leetCode题--9--回文数
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例 1:输入: 121输出: true示例 2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入: 10输出: false解释: 从右向左读, 为 01 。因此它不是一个回文数。进阶:你能不将...原创 2020-02-02 18:13:18 · 116 阅读 · 0 评论 -
每天一道leetCode题--8--字符串转换整数 (atoi)
请你来实现一个 atoi 函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。该字符串除了有效的整数部分之后也可能会存在多余的字符,这些字符可以被忽...原创 2020-02-02 17:17:48 · 189 阅读 · 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 = [3, 4]则中位数是 (2 + 3)...原创 2020-02-02 10:28:48 · 134 阅读 · 0 评论 -
每天一道leetCode题--2--两数相加
给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -> ...原创 2020-02-01 11:03:33 · 172 阅读 · 0 评论 -
每天一道leetCode题--397--整数替换
给定一个正整数 n,你可以做如下操作:如果 n 是偶数,则用 n / 2替换 n。如果 n 是奇数,则可以用 n + 1或n - 1替换 n。n 变为 1 所需的最小替换次数是多少?示例 1:输入:8输出:3解释:8 -> 4 -> 2 -> 1示例 2:输入:7输出:4解释:7 -> 8 -> 4 -> 2 -> 1...原创 2020-01-31 15:52:37 · 450 阅读 · 0 评论 -
每天一道leetCode题--数组--35--搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引,如果目标值不存在于数组中,返回它将会被按顺序插入的位置。假设数组中无重复元素实例1:输入:[1,3,5,6],5输出:2实例2:输入:[1,3,5,6],7输出;4考察二分法查找static int searchInsert(int* nums,int numSize, int target){ int i = ...原创 2020-01-20 09:38:23 · 177 阅读 · 0 评论 -
每天一道leetCode题--数组--1--两数之和
给定一个整数数组和一个目标值,找出数组中和为目标值的两个数你可以假设每个输入只对应一种答案,且同样的元素不能被重复使用示例:给定nums = [2,7,11,15],target = 9因为nums[0]+nums[1] = 2 + 7 = 9所以返回 [0,1]c代码实现#include <stdlib.h>struct object{ int val; in...原创 2020-01-18 19:15:01 · 223 阅读 · 0 评论 -
每天一道leetCode题--数组--26--删除排序数组中的重复项
给定一个排序数组,你需要使用原地算法删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须使用原地算法修改输入数组并在使用O(1)额外的条件下完成。实例:给定数组 nums = [1,1,2]函数应该返回的新的长度2,并且原数组nums的前两个元素被修改为1,2。int removeDuplicates(int * nums, int numS...原创 2020-01-17 09:16:06 · 174 阅读 · 0 评论 -
每天一道leetCode题--数组--27--移除元素
题目描述:给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例1:给定nums = [3,2,2,3],val = 3函数应该返回新的长度2,并且nums中的前两个元素均为2。示例2:给定nums = [0,1,2,2,3,0,4,2...原创 2020-01-15 12:45:13 · 141 阅读 · 0 评论 -
每天一道leetCode题--树--100--相同的树
题目:给定两个二叉树,编写一个函数来检验它们是否相同。如果两个数在结构上相同,并且节点就有相同的值,则认为它们是相同的。struct TreeNode{ int val; struct TreeNode* left; struct TreeNode* right;};static bool isSameTree(struct TreeNode* p,struct TreeNode...原创 2020-01-14 08:07:38 · 123 阅读 · 0 评论