![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
XReformat
考研结束了,开始更新
展开
-
LeetCode 41. 缺失的第一个正数 详解
自考研以来,第一次再次更新博客,接下来的时间会不断写新的文章。这道题目也是字节跳动的面试题,下面分享我的解题思路。题目内容:给定一个未排序的整数数组,找出其中没有出现的最小的正整数。要求:你的算法的时间复杂度应为O(n),并且只能使用常数级别的空间。示例:输入: [7,8,9,11,12]输出: 1输入: [3,4,-1,1]输出: 2输入: [1,2,3]输出: 4...原创 2020-03-19 18:48:18 · 225 阅读 · 0 评论 -
LeetCode(初级算法)数组篇---只出现一次的数字
从现在开始,我会在博客中,每天更新我之前写过的些算法题目,作为学习的记录,给大家参考。所有题目都是用java实现的,一开始的可能比较简单,慢慢的会加入一些有难度的题目。 题目给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [...原创 2018-04-23 20:20:53 · 131 阅读 · 0 评论 -
LeetCode(初级算法)数组篇---存在重复
题目给定一个整数数组,判断是否存在重复元素。如果任何值在数组中出现至少两次,函数应该返回 true。如果每个元素都不相同,则返回 false。解析在这道题里,我推荐大家使用两种方法。我的解题方式是能怎么简单就怎么简单,不追求到效率的极致,在力求不把问题复杂化方法一先排序,后在遍历数组时每次与下一个做比较,若存在相等则存在重复public class Solu...原创 2018-04-24 16:43:59 · 4443 阅读 · 0 评论 -
LeetCode(初级算法)数组篇---从排序数组中删除重复项
题目给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出新长度后面的元素。...原创 2018-04-24 17:21:10 · 155 阅读 · 0 评论 -
LeetCode(初级算法)数组篇---旋转数组
题目将包含 n 个元素的数组向右旋转 k 步。例如,如果 n = 7 , k = 3,给定数组 [1,2,3,4,5,6,7] ,向右旋转后的结果为 [5,6,7,1,2,3,4]。注意:尽可能找到更多的解决方案,这里最少有三种不同的方法解决这个问题。[显示提示]提示:要求空间复杂度为 O(1)解析做这道题之前需要知道,k是以一个数组长度为循环周期...原创 2018-04-27 10:56:59 · 263 阅读 · 0 评论 -
LeetCode(初级算法)排序与搜索篇---第一个错误的版本
第一个错误的版本题目你是产品经理,目前正在带领一个团队开发新的产品。不幸的是,你的产品的最新版本没有通过质量检测。由于每个版本都是基于之前的版本开发的,所以错误的版本之后的所有版本都是错的。假设你有 n 个版本 [1, 2, ..., n],你想找出导致之后所有版本出错的第一个错误的版本。你可以通过调用 bool isBadVersion(version) 接口来判断版本号 v...原创 2018-05-14 17:02:05 · 1105 阅读 · 0 评论 -
LeetCode(初级算法)排序与搜索篇---合并两个有序数组
题目给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。说明:初始化 nums1 和 nums2 的元素数量分别为 m 和 n。你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。示例:输入:nums1 = [1,2,3,0,0,0], m...原创 2018-05-14 17:03:34 · 118 阅读 · 0 评论 -
LeetCode(初级算法)动态规划篇---爬楼梯
题目假设你正在爬楼梯。需要 n 步你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1. 1 步 + 1 步2. 2 步示例 2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。1. 1 步 + 1 步 + 1 ...原创 2018-05-15 18:54:10 · 582 阅读 · 0 评论 -
十进制数与N进制的转换
文章目录题目代码(c语言)解析小结题目1)问题描述:将从键盘输入的十进制数转换为N(如二进制,八进制,十六进制)进制数据。2)要求:利用顺序栈实现数制转换问题代码(c语言)#include<stdio.h>#include<stdlib.h>//定义栈结构typedef struct stack{ int num[50]; int tap;}St...原创 2018-09-29 12:35:02 · 14408 阅读 · 0 评论