当前位置: 首页 > news >正文

Leetcode 算法题 88. 合并两个有序数组

起因, 目的:

  • 做题的过程中,不能听歌, 减少干扰。
  • 太简单,没意思。太难太复杂,容易放弃。 如何找到难度合适的题?

题目来源: 88. 合并两个有序数组

参考题解: 官方题解,方法二:双指针

继续做双指针。

def solu(nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3):
    done = []
    # 定义2个指针,从0开始。
    p1 = 0
    p2 = 0

    # while 这个条件,不太好理解。
    # 表示, 只要有一个还没处理完, 就继续处理, 直到2个列表都处理完。
    while p1 < m or p2 < n:

        # 下面这2个是边界条件。
        if p1 == m:  # nums1 已经处理完了, 只能取 nums2
            done.append(nums2[p2])
            p2 += 1

        elif p2 == n: # nums2 已经处理完了, 只能取 nums1
            done.append(nums1[p1])
            p1 += 1

        # 比较大小
        elif nums1[p1]  <  nums2[p2]:
            done.append(nums1[p1])
            p1 += 1
        else:
            done.append(nums2[p2])
            p2 += 1

    # 最后直接修改 nums1
    nums1[:] = done

print(solu( nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3  ))

http://www.dtcms.com/a/20060.html

相关文章:

  • 【含文档+源码】基于Web的在线课堂测试课程考评系统的开发与实现
  • GPQA (Graduate-Level Google-Proof QA Benchmark) 数据集
  • 图像处理篇---基本OpenMV图像处理
  • HackerRank C++面试,中等难度题目 - Attribute Parser
  • Bandana论文阅读
  • 复杂电磁环境下无人机自主导航增强技术研究报告——地磁匹配与多源数据融合方法,附matlab代码
  • 基于多元高斯分布的异常检测技术原理与实现
  • lean4安装
  • 论文阅读2——S波段宽波束圆极化天线设计
  • 【ISO 14229-1:2023 UDS诊断(会话控制0x10服务)测试用例CAPL代码全解析⑤】
  • 初阶数据结构:树---二叉树的链式结构
  • LeetCode1706
  • 使用 React 16+Webpack 和 pdfjs-dist 或 react-pdf 实现 PDF 文件显示、定位和高亮
  • [Java网络安全系列面试题] GET 和 POST 的区别在哪里?
  • 1441. 用栈操作构建数组 中等
  • 《当DeepSeek遇上豆包:AI大模型的华山论剑》
  • 我用 Cursor 开发了一款个人小记系统
  • B站视频同步思维导图(全)
  • 利用AI智能体创建云端文档知识库并集成第三方数据源(下)
  • 开发指南101-拖动排序
  • 细说STM32F407单片机RTC的基本原理及闹钟和周期唤醒功能的使用方法
  • kafka生产端之架构及工作原理
  • 【弹性计算】容器、裸金属
  • [C++语法基础与基本概念] std::function与可调用对象
  • 亚远景-ASPICE 4.0与敏捷开发:如何实现高效协同
  • YOLOv11-ultralytics-8.3.67部分代码阅读笔记-tuner.py
  • CAS单点登录(第7版)8.委托和代理
  • (PC+WAP) PbootCMS中小学教育培训机构网站模板 – 绿色小学学校网站源码下载
  • 1219:马走日
  • android studio下载安装汉化-Flutter安装