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

12.17 - 合并两个有序数组 include<> 和 include““ 的区别

目录

1.合并两个有序数组

a.核心思想

b.思路

c.步骤

2.include<> 和 include"" 的区别

a.#include<文件名>

b.#include"文件名"


1.合并两个有序数组

88. 合并两个有序数组 - 力扣(LeetCode)https://leetcode.cn/problems/merge-sorted-array/

class Solution { public: void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) { int i = m - 1; int j = n - 1; int k = m + n - 1; while (i >= 0 && j >= 0) { if (nums1[i] >= nums2[j]) { nums1[k--] = nums1[i--]; } else { nums1[k--] = nums2[j--]; } } while (j >= 0) { nums1[k--] = nums2[j--]; } } };

a.核心思想

利用双指针法,将两个非递减顺序排列的有序数组合并到一个数组中,保持非递减顺序。

b.思路

由于nums1有足够的空间来存储合并后的数组(初始长度为m + n,后n个元素为0可以忽略),我们可以从两个数组的末尾开始比较元素,将较大的元素放到nums1的合适位置。

c.步骤

① 初始化三个指针:i指向nums1的有效元素末尾(即m - 1),j指向nums2的末尾(即n - 1),k指向nums1的总长度末尾(即m + n - 1)。

② 比较nums1[i]nums2[j]的大小,将较大的元素放到nums1[k]的位置,然后移动相应的指针。

③ 重复步骤 2,直到其中一个数组的元素全部合并。

④ 如果nums2中还有剩余元素,将其直接复制到nums1的前面。

2.include<> 和 include"" 的区别

核心区别:搜索路径优先级不同,导致使用场景和潜在风险差异。

a.#include<文件名>

  • 搜索路径:直接从系统标准库路径查找(如/usr/include)。
  • 适用场景:标准库或第三方库头文件(如<iostream>)。
  • 特点:编译效率高,路径固定。

b.#include"文件名"

  • 搜索路径:优先在项目当前目录/源文件所在目录查找,未找到则转系统路径。
  • 适用场景:项目自定义头文件(如"myheader.h")。
  • 特点:符合项目结构,但可能因路径冲突覆盖系统头文件。

希望这些内容对大家有所帮助!

感谢大家的三连支持!

http://www.cnnetsun.cn/news/120388.html

相关文章:

  • EmotiVoice结合大模型打造拟人化对话系统
  • Vue 项目路由 + Layout 的最佳实践
  • 11、量子电路的架构感知分解
  • Kotaemon能否扛住高并发?压力测试数据来了
  • Kotaemon支持的多种部署模式详解(本地/云/混合)
  • Kotaemon矿业安全规程问答机器人部署
  • Python大数据技术的基于Hadoop的健康饮食推荐系统的设计与实现_5578bn9k_yh025
  • 从文本到情感语音:EmotiVoice的技术实现路径
  • Kotaemon多租户支持能力曝光,适用于SaaS场景
  • EmotiVoice语音合成引擎的架构设计与原理剖析
  • 1、Linux API 与 Kylix 开发全解析
  • 3、深入探索Linux API:错误处理与特性对比
  • 17、深入理解Socket服务器的创建与应用
  • 18、Linux网络编程:socket API函数深度解析
  • 聚铭网络蝉联ISC.AI 2025创新百强,持续领跑安全运营、网络与流量安全双赛道
  • 29、Python 中进程与线程管理全解析
  • EmotiVoice开源模型本地部署避坑指南
  • 笔试强训day7
  • EmotiVoice情感编码技术揭秘:如何让AI说出喜怒哀乐?
  • 46、基于 Pthreads 的多线程编程:基础与同步解析
  • 48、基于 Pthreads 的多线程编程:同步机制深入解析
  • 52、基于 Pthreads 的多线程编程(三)
  • Kotaemon文档翻译功能扩展:跨语言问答不再是难题
  • 好无聊,最近没思路
  • Kotaemon水务管理系统智能预警机制
  • Kotaemon视频内容摘要生成实验记录
  • 用Matlab探索齿轮系统的奥秘:刚度计算与动力学响应
  • 【node阅读-0】下载编译node
  • EmotiVoice支持动态情感过渡,实现平滑情绪变化
  • EmotiVoice推理时显存占用优化方案(适用于低配GPU)