【C/C++】面试常考题目

news2025/6/3 19:54:54

面试中最常考的数据结构与算法题,适合作为刷题的第一阶段重点。


✅ 分类 & 推荐题目列表(精选 70 道核心题)

一、数组 & 字符串(共 15 题)

题目类型LeetCode编号
两数之和哈希表#1
盛最多水的容器双指针#11
三数之和排序+双指针#15
移动零原地操作#283
合并两个有序数组双指针#88
最长公共前缀字符串处理#14
字符串相加模拟#415
字符串转换整数字符串处理#8
有效的括号#20
反转字符串双指针#344
实现 strStr()双指针/KMP#28
最长不重复子串滑动窗口#3
找出所有异位词哈希 + 排序#438
轮转数组数组翻转#189
矩阵置零空间优化#73

二、链表(共 10 题)

题目类型LeetCode编号
反转链表迭代/递归#206
合并两个有序链表递归/迭代#21
环形链表快慢指针#141
相交链表指针遍历#160
删除链表的倒数第 N 个节点双指针#19
链表中间结点快慢指针#876
K 个一组反转链表高频#25
排序链表归并排序#148
复制带随机指针的链表哈希#138
删除重复元素 II链表操作#82

三、栈、队列、堆(共 8 题)

题目类型LeetCode编号
用栈实现队列双栈#232
最小栈辅助栈#155
有效的括号#20
滑动窗口最大值单调队列/堆#239
用队列实现栈双队列#225
前 K 个高频元素小顶堆#347
数据流的中位数双堆#295
实现 LRU 缓存双链表+哈希#146

四、哈希表(共 6 题)

题目类型LeetCode编号
两数之和哈希表#1
存在重复元素哈希表#217
有效的字母异位词计数器#242
字符串中的第一个唯一字符哈希表#387
和为 K 的子数组前缀和 + 哈希#560
四数之和排序 + 哈希#18

五、二叉树 & 图(共 12 题)

题目类型LeetCode编号
二叉树的最大深度DFS#104
二叉树的层序遍历BFS#102
对称二叉树DFS/BFS#101
验证二叉搜索树中序遍历#98
另一棵树的子树递归判断#572
从前序与中序遍历构造二叉树分治#105
二叉树的最近公共祖先DFS#236
翻转二叉树DFS#226
合并二叉树DFS#617
课程表(拓扑排序)#207
克隆图DFS/BFS#133
二叉树的直径后序DFS#543

六、排序 & 查找(共 7 题)

题目类型LeetCode编号
合并区间排序#56
搜索旋转排序数组二分查找#33
搜索二维矩阵二分查找#74
寻找峰值二分查找#162
第 K 个最大元素快排 / 堆#215
快速排序手写实现模板题
合并 K 个升序链表#23

七、动态规划(共 12 题)

题目类型LeetCode编号
爬楼梯DP#70
不同路径DP#62
零钱兑换背包问题#322
0-1 背包(模板)背包DP
最长回文子串中心扩展 / DP#5
编辑距离字符串DP#72
最长递增子序列DP#300
打家劫舍线性DP#198
最大子序和贪心 / DP#53
股票买卖系列状态机DP#121、#122、#123
跳跃游戏贪心 / DP#55
买卖股票的最佳时机含冷冻期DP#309

📝 补充建议

推荐刷题平台:

  • LeetCode(国际 + 中文)
  • 牛客网剑指Offer专项训练
  • 洛谷

刷题工具建议:

  • 使用 C++17 编写并通过本地或 VSCode + CMake 运行测试;
  • 建议写一个 template.cpp 包含通用头文件/结构体/调试宏,便于快速测试。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2395407.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Chorme如何对于youtube视频进行画中画背景播放?

画中画可以让你小窗播放,然后浏览器放后台还可以做点别的事情。 B站直接可以选择小窗播放,游览器最小化就可以,但是youtube的小窗播放游览器一切换就不显示了。 其实是因为youtube的小窗播放不是真的小窗播放。要想真的实现需要在youtube视…

017搜索之深度优先搜索——算法备赛

深度优先搜索 如果说广度优先搜索是逐层扩散,那深度优先搜索就是一条道走到黑。 深度优先遍历是用递归实现的,预定一条顺序规则(如上下左右顺序) ,一直往第一个方向搜索直到走到尽头或不满足要求后返回上一个叉路口按…

睿抗机器人开发者大赛CAIP-编程技能赛-历年真题 解题报告汇总 | 珂学家

前言 汇总 睿抗机器人开发者大赛CAIP-编程技能赛-历年真题 解题报告汇总 2024年 2024 睿抗机器人开发者大赛CAIP-编程技能赛-本科组 (国赛) 解题报告 2024 睿抗机器人开发者大赛CAIP-编程技能赛-本科组(省赛)解题报告 2024 睿抗机器人开发者大赛CAI…

【c++】【数据结构】AVL树

目录 AVL树的定义AVL树的部分模拟实现平衡因子的引入平衡因子的向上调整旋转算法单旋算法右单旋左单旋 双旋算法左右双旋右左双旋 AVL树的定义 AVL树本质是一种搜索二叉树,传统的二叉搜索树我们都有所了解,其在理想情况下也就是接近满二叉树时拥有极高的…

通义灵码深度实战测评:从零构建智能家居控制中枢,体验AI编程新范式

一、项目背景:零基础挑战全栈智能家居系统 目标:开发具备设备控制、环境感知、用户习惯学习的智能家居控制中枢(PythonFlaskMQTTReact) 挑战点: 需集成硬件通信(MQTT)、Web服务(Flask)、前端交互(React) 调用天气AP…

头歌之动手学人工智能-Pytorch 之优化

目录 第1关:如何使用optimizer 任务描述 编程要求 测试说明 真正的科学家应当是个幻想家;谁不是幻想家,谁就只能把自己称为实践家。 —— 巴尔扎克开始你的任务吧,祝你成功! 第2关:optim.SGD 任务描述…

基于谷歌ADK的智能客服系统简介

Google的智能体开发工具包(Agent Development Kit,简称ADK)是一个开源的、以代码为中心的Python工具包,旨在帮助开发者更轻松、更灵活地构建、评估和部署复杂的人工智能智能体(AI Agent)。ADK 是一个灵活的…

(一)视觉——工业相机(以海康威视为例)

一、工业相机介绍 工业相机是机器视觉系统中的一个关键组件,其最本质的功能就是将光信号转变成有序的电信号。选择合适的相机也是机器视觉系统设计中的重要环节,相机的选择不仅直接决定所采集到的图像分辨率、图像质量等,同时也与整个系统的运…

DAY 36 超大力王爱学Python

仔细回顾一下神经网络到目前的内容,没跟上进度的同学补一下进度。 作业:对之前的信贷项目,利用神经网络训练下,尝试用到目前的知识点让代码更加规范和美观。探索性作业(随意完成):尝试进入nn.Mo…

SRD-12VDC-SL-C 继电器‌接线图解

这个继电器可以使用12伏的直流电源控制250伏和125伏的交流电,也可以控制30伏和28伏的直流电,电流都为10安。 此继电器有5个引脚,各个的作用如下: 引脚4和引脚5为触点, 引脚1和引脚3为线圈引脚,接12伏的直…

基于开源链动2+1模式AI智能名片S2B2C商城小程序的企业组织生态化重构研究

摘要:本文以互联网时代企业组织结构变革为背景,探讨开源链动21模式AI智能名片S2B2C商城小程序在推动企业从封闭式向开放式生态转型中的核心作用。通过分析传统企业资源获取模式与网络化组织生态的差异,结合开源链动21模式的裂变机制、AI智能名…

2,QT-Creator工具创建新项目教程

目录 1,创建一个新项目 demo_01.pro(项目配置文件) 类似 CMakeList.txt widget.h(头文件)​ main.cpp(程序入口)​ widget.cpp(源文件)​ widget.ui(界面设计文件)​ 1,创建一个新项目 依次选择: 设置路径: 选择编译器: 如果选择CMake, 就会生成cmakel…

《深入解析SPI协议及其FPGA高效实现》-- 第一篇:SPI协议基础与工作机制

第一篇:SPI协议基础与工作机制 1. 串行外设接口导论 1.1 SPI的核心定位 协议本质 : 全双工同步串行协议(对比UART异步、IC半双工)核心优势 : 无寻址开销(通过片选直连)时钟速率可达100MHz&…

2025年5月6日 飞猪Java一面

锐评 鸡蛋鸭蛋荷包蛋 我的蛋仔什么时候才能上巅峰凤凰蛋? 1. 如何保证数据库数据和redis数据一致性 数据库数据和 redis 数据不一致是在 高并发场景下更新数据的情况 首先我们要根据当前保持数据一致性的策略来决定方案 如果采取的策略是先删除缓存 更新数据库 我们假设现…

【AI论文】推理语言模型的强化学习熵机制

摘要:本文旨在克服将强化学习扩展到使用 LLM 进行推理的主要障碍,即策略熵的崩溃。 这种现象在没有熵干预的RL运行中一直存在,其中策略熵在早期训练阶段急剧下降,这种探索能力的减弱总是伴随着策略性能的饱和。 在实践中&#xff…

Ubuntu22.04 安装 IsaacSim 4.2.0

1. 从官网下载 IsaacSim 4.2.0 安装包 https://download.isaacsim.omniverse.nvidia.com/isaac-sim-standalone%404.2.0-rc.18%2Brelease.16044.3b2ed111.gl.linux-x86_64.release.zip 2. 查阅 Workstation Installation 安装方式 Workstation Installation — Isaac Sim Do…

Java代码重构:如何提升项目的可维护性和扩展性?

Java代码重构:如何提升项目的可维护性和扩展性? 在Java开发领域,随着项目规模的不断扩大和业务需求的频繁变更,代码的可维护性和扩展性逐渐成为了项目成功的关键因素。代码重构作为一种优化代码质量的重要手段,能够在…

《Python语言程序设计》2018 第4章第9题3重量和价钱的对比,利用第7章的概念来解答你

利用类来解答这个问题。 pack1, price1 50, 24.59 pack2, price2 25, 11.99class result:def __init__(self,pack,price):self.pack packself.price pricedef set_pack(self):return self.packdef set_price(self):return self.pricedef get_result(self):return self.pric…

在IIS上无法使用PUT等请求

错误来源: chat:1 Access to XMLHttpRequest at http://101.126.139.3:11000/api/receiver/message from origin http://101.126.139.3 has been blocked by CORS policy: No Access-Control-Allow-Origin header is present on the requested resource. 其实我的后…

数据基座觉醒!大数据+AI如何重构企业智能决策金字塔(上)

1. 数据金字塔的千年进化史 1.1 从地窖到云端的存储革命 某家电企业在2010年遭遇库存危机时,市场部门需要三天才能从纸质单据中统计出全国滞销型号。当他们的数据工程师在2023年轻声唤醒对话式分析机器人,同样的需求响应时间缩短至9秒。 数据分层架构的…