![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Leetcode
乔春城
杭州海康威视数字技术股份有限公司,机器视觉SDK开发,擅长C++/C#
展开
-
Leetcode Easy Level 解题报告
Leetcode Easy Level解题目录如下:目前仍然处于更新中的状态,敬请期待: 题目序号题目名称解题链接001两数之和LINK007颠倒整数LINK009回文数LINK013罗马数字转整数LINK014最长公共前缀LINK020有效的括号LINK021合并两个有序链表LINK026删除排序数组中的重复项LINK027移除元素LINK028实现strStr()LINK035搜索插入位置LI...原创 2018-04-12 00:17:51 · 277 阅读 · 0 评论 -
Leetcode 66 -- 加一
题目链接:Leetcode 66大致描述一下题目:数组表示的数字加一,返回加一后的值,数组首元素存放的高位。[1,2,3] + 1 -> [1,2,4]解题思路:基本的加法进位逻辑附上解题代码:(C++)/*******************************************************************************Copyright © 20...原创 2018-04-27 14:28:03 · 159 阅读 · 0 评论 -
Leetcode 58 -- 最后一个单词的长度
题目链接:Leetcode 58描述一下题目:给定一个只有大小写字母和空格的字符串,计算最后一个单词的长度,如果不存在单词,则返回0.解题思路:从字符串尾端开始遍历字符串呀~~~设置一个标志位和计数器,当遇到第一个非空格时,标志位置true,同时计数器++直到遇到空格。代码如下:(C++)/******************************************************...原创 2018-04-27 13:44:13 · 353 阅读 · 0 评论 -
Leetcode 53 -- 最大子序和
题目链接:Leetcode 53描述一下题目:给定一个数组,找到具有最大和的子连续数组,返回最大和。解题思路:在Mooc上面 浙江大学数据结构里提到过这一题,这题跟那一题不一样的地方在于,如果最大和是负数,mooc上是返回0,这里是仍然返回负数。我们o(n)复杂度的算法是遍历数组,依次相加,当sum<0舍弃前面所有元素。因为前面sum<0,与后一个数相加反而使后面一个数字变小了,如此循...原创 2018-04-27 13:33:35 · 290 阅读 · 0 评论 -
Leetcode 38 -- 报数
题目链接:Leetcode 38描述一下题目:说起来都是泪啊... 2018年3月18号那场PAT乙级考试的第四题就是这个... 没做出来,所以啊,Leetcode要多刷刷。。给定一个如下规律的数列,求出第n项。1,11,21,1211,111221....解题思路:递归,递归,递归! 重要的话说三遍!分析这个数组的规律,第一项是1,第二项是11,代表1(count)个1(element),然后第...原创 2018-04-27 11:11:49 · 1673 阅读 · 0 评论 -
Leetcode 35 -- 搜索插入位置
题目链接:Leetcode 35大致描述一下题目:给定一个排序数组和一个目标值,返回该值在数组中的位置,如果数组中没有该值,则返回顺序插入的位置。解题思路:很简单,就是遍历数组,判断是否相等,还有前一个元素是否小于并且后一个元素是否大于。注意好边界值,即首元素和最后一个元素与目标值的比较。代码如下:/*************************************************...原创 2018-04-27 10:59:28 · 228 阅读 · 0 评论 -
Leetcode 28 -- 实现strStr( )
题目链接:Leetcode 28大致描述一下题目:给定两个str1和str2字符串,在str1中找出str2第一次出现的位置(从0开始),如果没有则返回-1。解题思路:首先比较str1和str2的长度,如果相等,比较是否为相等字符串;如果不相等,遍历str1.size()-str2.size()次,从str1[i](i=0,1,2...)开始str2.size大小的字符串是否和str2相等。附上代...原创 2018-04-27 10:12:01 · 193 阅读 · 0 评论 -
Leetcode 27 -- 移除元素
题目链接如下:Leetcode 27大致描述一下题目:类似于Leetcode26,给定一个数组和目标值val,原地删除val元素并且返回数字新长度解题思路:同样的方法,定义一个从0开始的计数器count,修改数组下标附上代码如下:(C++)/*******************************************************************************...原创 2018-04-27 09:41:43 · 142 阅读 · 0 评论 -
Leetcode 26 -- 删除排序数组中的重复项
题目链接如下:Leetcode 26大致描述一下题目:给出一个排序数组,原地删除重复元素,使得每个元素仅出现一次,返回移除后数组的长度。不要使用额外的数组空间。解题思路:很简单的一个逻辑,定义一个计数器count从1开始,从第二个元素开始遍历数组,如果当前元素和上一个元素不相等,将当前元素的下标赋值为count,同时count++附上代码如下:(C++)/*********************...原创 2018-04-27 09:30:24 · 162 阅读 · 0 评论 -
Leetcode 21 -- 合并两个有序链表
题目链接如下:Leetcode 21大致描述一下题目:将两个有序链表合并成一个新的链表并返回,拼接给定两个链表的所有节点。解题思路:基本的链表操作,在这里复习一下链表插入元素的操作。附上代码如下(C++):/*******************************************************************************Copyright © 2018...原创 2018-04-25 11:10:26 · 284 阅读 · 0 评论 -
Leetcode 20 -- 有效的括号
题目链接如下:Leetcode 20大致描述一下题目:给定一个字符串,只有'(' , ')' , '[', ']' , '{' , '}' 这六个字符,判断是否是有效字符串。要求如下:1. 左括号必须与对应的右括号闭合2. 左括号以正确的顺序闭合3.空字符串算有效字符串解题思路:老套路没啥好说的,用栈处理,类似于Leetcode的第九题 回文数。注意一些特殊的情况,比如字符串长度是奇数,首字符是右...原创 2018-04-25 10:47:52 · 485 阅读 · 0 评论 -
Leetcode 14 -- 最长公共前缀
题目链接如下:Leetcode 14大致描述一下题目:题目给出一个字符串数组,编写一个函数找出最长公共前缀,如果没有,返回空解题思路:基本上有两个思路:横向扫描和纵向扫描假设我们有一个str[ ]数组,"flow" "flower" "flight"横向扫描就是遍历所有字符串,先假设目标字串为str[0],然后和下一个字符串每个字符逐一比较,当遇到不一样的元素用substr截取保存为目标子串,然后...原创 2018-04-25 10:36:46 · 324 阅读 · 0 评论 -
Leetcode 13 -- 罗马数字转整数
题目链接如下:Leetcode 013大致描述一下题目:讲一个罗马数字转化成整数,题目限制数字在1-3999之间罗马数字有如下7个字符'I','V','X','L','C','D','M',分别代表1,5,10,50,100,500,1000解题思路:查阅了一些资料,了解到罗马数字转化成整数的一些规则 1. 相同数字连写n次,表示这个数字自加n次2. 小的数字在右边,则两个数相加3. 小的数字在左...原创 2018-04-24 09:54:47 · 143 阅读 · 0 评论 -
Leetcode 09 -- 回文数
题目链接如下:Leetcode 09 大致描述一下:判断一个整数是不是回文数,就是从左往右和从右往左读都是一样的整数,eg.121->true 解题思路:遇到这种字符串匹配问题,最好的方法就是构建栈这样的数据结构,先将一半的字符串入栈,然后后半段利用栈pop出来的元素逐一比对。如果字符串size是奇数,要跳过中间项。附上解题代码(C++):/*************************...原创 2018-04-24 09:42:03 · 177 阅读 · 0 评论 -
Leetcode 07 -- 反转整数
题目链接: Leetcode 07大致描述一下题目:给定一个32位有符号整数,将该数中的数字进行反转eg. 123->321, -123->-321,120->21题目假设只能存储32位有符号数,如果溢出返回0解题思路:首先对于这样一个传进来的int型整数,将其转化成字符串比较容易处理,先判断第一个s[0]是不是'-'号,然后使用C++ STL中的reverse函数将字符串进行反...原创 2018-04-24 09:30:48 · 151 阅读 · 0 评论 -
Leetcode 01 -- 两数之和
题目链接:Leetcode 01大致描述一下题目:给定一个数组,还有一个目标数,找出数组中是否有两个数字可以加起来等于目标值。由于是Easy level,题目假设每组输入只对应一个解,而且不存在同一元素使用两次解题思路:比较简单,使用两个for循环去遍历数组,然后nums[i]+nums[j]是否等于目标值,等于返回i,j附上解题代码(C++):/*************************...原创 2018-04-24 09:16:52 · 127 阅读 · 0 评论 -
跟着姥姥学数据结构(1) -- 最大子列和
大学毕业已经两年了,两年的工作中发现自己曾经很差的计算机基础部分还是没有得到锻炼,就在中国大学MOOC上面参加了数据结构的课程。在博客中会把课后作业中的一些题目写出来。 今天要说的题目是求一个数列的最大子列和,有一个N个整数的序列{A1,A2,A3,A4...AN},求函数f(x,y)=max{0, Ai+Ai+1+...Aj (1<=i<j<=N)}的最大值.这题...原创 2018-03-28 13:54:25 · 2285 阅读 · 0 评论