橙晨燕

vuePress-theme-reco Visionwuwu    2020 - 2021
橙晨燕 橙晨燕

Choose mode

  • dark
  • auto
  • light
主页
分类
  • 大学课程
  • 前端
  • 力扣算法
  • 随笔
标签
时间线
收藏集
  • 爱看的书
  • 爱追的剧
其他
  • 每日壹题 📚
  • CET-4 🛰️
  • 技术文档 📖
  • 收藏文章 📮
  • 项目展示 🚀
  • 项目总结 📝
  • 工具箱 📦

    • 图片压缩
    • 阿里云
    • 腾讯云
    • 掘金
    • CSDN
关于我
GitHub
author-avatar

Visionwuwu

25

文章

8

标签

主页
分类
  • 大学课程
  • 前端
  • 力扣算法
  • 随笔
标签
时间线
收藏集
  • 爱看的书
  • 爱追的剧
其他
  • 每日壹题 📚
  • CET-4 🛰️
  • 技术文档 📖
  • 收藏文章 📮
  • 项目展示 🚀
  • 项目总结 📝
  • 工具箱 📦

    • 图片压缩
    • 阿里云
    • 腾讯云
    • 掘金
    • CSDN
关于我
GitHub
  • 每日壹题
  • 2021年1月

    • 「No.01」【 每日壹题 】
    • 「No.02」【 每日壹题 】
    • 「No.03」【 每日壹题 】
    • 「No.04」【 每日壹题 】
      • LeetCode算法题之-俩个正序数组的中位数
        • 示例
        • 思路
        • 参考答案

「No.04」【 每日壹题 】

vuePress-theme-reco Visionwuwu    2020 - 2021

「No.04」【 每日壹题 】


Visionwuwu 2021-01-27 算法 javascript

  • LeetCode算法题之-俩个正序数组的中位数
    • 示例
    • 思路
    • 参考答案

LeetCode算法题之-俩个正序数组的中位数

# LeetCode算法题之-俩个正序数组的中位数

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

# 示例

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

# 思路

  1. 创建一个新的节点作为链表头,将dummy指向当前节点
  2. 定义一个临时变量curr指向dummy
  3. 定义一个变量carry用来表示俩数相加是否需要进位 0 表示不进位 1表示进位
  4. 当l1或l2存在时需要循环遍历,拿到链表的每个节点的值相加,
  5. l1或l2的存在就取对应节点的值相加,还需加上当前进位数,得到相加结果sum
  6. 判断是否需要进位,第一种如果sum >= 10需要进位,第二种carry = Math.floor(sum / 10)
  7. 每个节点只能存放一位数所以,需要取sum的个位数存放到新的节点,有俩种方式: 第一种sum - 10,第二种sum % 10
  8. 将curr向前进一位指向新的节点
  9. l1和l2向后移一位指向下一个节点
  10. 当俩个链表到头了,需要在检查一下carry如果是1需要附加一个节点把1存放进去
  11. 最后在返回dummy.next,也就是最后链表的头

# 参考答案

详细信息
/**
 * @param {string} s
 * @return {number}
 */

var lengthOfLongestSubstring = function (s) {
  const set = new Set()
  let i = 0, j = 0, maxLength = 0
  if (s.length === 0) return 0
  for (i; i < s.length; i++) {
    if (set.has(s[i])) {
      set.delete(s[j])
      j++
      while (set.has(s[i])) {
        set.delete(s[j])
        j++
      }
      set.add(s[i])
    } else {
      set.add(s[i])
      maxLength = Math.max(maxLength, set.size)
    }
  }
  return maxLength
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
在 GitHub 上编辑此页 !
最后一次更新: 3 分钟前