【计题01组001号】LeetCode刷题笔记001

这篇博客主要记录了LeetCode中关于数组和链表的四道经典算法题,包括两数之和、两数相加、无重复字符的最长子串以及寻找两个正序数组的中位数。通过分析与解答,阐述了如何解决这些算法问题,涉及到了数组操作和链表的基本操作,适合于进阶算法学习者参考。
摘要由CSDN通过智能技术生成

【计题01组001号】LeetCode刷题笔记001

1.两数之和

【1】题目描述

给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标。

你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。

你可以按任意顺序返回答案。

示例1:

输入:nums=[2,7,11,15],target=9
输出:[0,1]
解释:因为nums[0]+nums[1]==9,返回[0,1]。
示例2:

输入:nums=[3,2,4],target=6
输出:[1,2]
示例3:

输入:nums=[3,3],target=6
输出:[0,1]

提示:

2<=nums.length<=104
-109<=nums[i]<=109
-109<=target<=109
只会存在一个有效答案
进阶:你可以想出一个时间复杂度小于O(n2)的算法吗?

【2】涉及知识点:数组+简单计算

【3】分析与解答:这道题的数据构成不难,只需要用两层循环套一下就可以了,当然这想进阶还不行

【4】代码设计

【C++】

点击查看代码
class Solution {
public:
        vector twoSum(vector& nums, int target) {
            int i,j;
            for(i=0;i

【JAVA】

点击查看代码
class Solution {
    public int[] twoSum(int[] nums, int target) {
        for(int i=0;i

2.两数相加

【1】题目描述

给你两个非空的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。

请你将两个数相加,并以相同形式返回一个表示和的链表。

你可以假设除了数字0之外,这两个数都不会以0开头。

示例1:


输入:l1=[2,4,3],l2=[5,6,4]
输出:[7,0,8]
解释:342+465=807.
示例2:

输入:l1=[0],l2=[0]
输出:[0]
示例3:

输入:l1=[9,9,9,9,9,9,9],l2=[9,9,9,9]
输出:[8,9,9,9,0,0,0,1]

提示:

每个链表中的节点数在范围[1,100]内
0<=Node.val<=9
题目数据保证列表表示的数字不含前导零

【2】涉及知识点

【3】分析与解答

【4】代码设计

3.无重复字符的最长子串

【1】题目描述

给定一个字符串s,请你找出其中不含有重复字符的最长子串的长度。

示例1:

输入:s="abcabcbb"
输出:3
解释:因为无重复字符的最长子串是"abc",所以其长度为3。
示例2:

输入:s="bbbbb"
输出:1
解释:因为无重复字符的最长子串是"b",所以其长度为1。
示例3:

输入:s="pwwkew"
输出:3
解释:因为无重复字符的最长子串是"wke",所以其长度为3。
请注意,你的答案必须是子串的长度,"pwke"是一个子序列,不是子串。
示例4:

输入:s=""
输出:0

【2】涉及知识点

【3】分析与解答

【4】代码设计

4.寻找两个正序数组的中位数

【1】题目描述

给定两个大小分别为m和n的正序(从小到大)数组nums1和nums2。请你找出并返回这两个正序数组的中位数。

算法的时间复杂度应该为O(log(m+n))。

示例1:

输入:nums1=[1,3],nums2=[2]
输出:2.00000
解释:合并数组=[1,2,3],中位数2
示例2:

输入:nums1=[1,2],nums2=[3,4]
输出:2.50000
解释:合并数组=[1,2,3,4],中位数(2+3)/2=2.5
示例3:

输入:nums1=[0,0],nums2=[0,0]
输出:0.00000
示例4:

输入:nums1=[],nums2=[1]
输出:1.00000
示例5:

输入:nums1=[2],nums2=[]
输出:2.00000

【2】涉及知识点

【3】分析与解答

【4】代码设计

5.最长回文子串

【1】题目描述

示例1:

输入:s="babad"
输出:"bab"
解释:"aba"同样是符合题意的答案。
示例2:

输入:s="cbbd"
输出:"bb"
示例3:

输入:s="a"
输出:"a"
示例4:

输入:s="ac"
输出:"a"

【2】涉及知识点

【3】分析与解答

【4】代码设计

在黑夜里梦想着光,心中覆盖悲伤,在悲伤里忍受孤独,空守一丝温暖。 我的泪水是无底深海,对你的爱已无言,相信无尽的力量,那是真爱永在。 我的信仰是无底深海,澎湃着心中火焰,燃烧无尽的力量,那是忠诚永在

文章来源:https://www.cnblogs.com/yyyyfly1/p/15645518.html

Tags:笔记 leetcode 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值