
c++
村北头的码农
c++程序员,目前从事人工智能领域相关工作
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++面试题(55)------二叉树的最近公共祖先
给定一个二叉树(不一定是二叉搜索树),和两个节点 p 和 q,请找出它们在这棵树中的最近公共祖先(LCA)。原创 2025-06-27 11:17:23 · 151 阅读 · 0 评论 -
C++面试题(54)------把字符串转换成整数
请你写一个函数,将字符串转换为整数(int)原创 2025-06-27 10:57:00 · 242 阅读 · 0 评论 -
C++面试题(53)------构建乘积数组
给你一个数组 A,比如 [1,2,3,4,5],你要返回一个新的数组 B。B 中的每一个元素 B[i] 是 A 中除了 A[i] 以外所有元素的乘积。不能使用除法。原创 2025-06-26 18:23:20 · 200 阅读 · 0 评论 -
C++面试题(52)------不用加减乘除做加法
写一个函数,求两个整数之和,要求在函数体内不得使用 +、-、*、/ 四则运算符号。原创 2025-06-25 17:54:27 · 218 阅读 · 0 评论 -
C++面试题(51)------求 1 + 2 + ... + n
求 1 + 2 + 3 + ... + n,要求不能使用乘除法、for/while/do-while/if/else/switch/case 等关键字及条件判断语句。原创 2025-06-24 18:14:38 · 217 阅读 · 0 评论 -
C++面试题(50)------股票的最大利润
假设把某股票的价格按照时间先后顺序存储在数组中,请你计算一次交易中能获取的最大利润(卖出价 - 买入价)。原创 2025-06-24 17:46:04 · 150 阅读 · 0 评论 -
C++面试题(49)------圆圈中最后剩下的数字(约瑟夫环问题)
0, 1, ..., n-1 这 n 个数字排成一个圆圈,从数字 0 开始,每次从这个圆圈里删除第 m 个数字。求出这个圆圈里剩下的最后一个数字。原创 2025-06-24 16:50:51 · 174 阅读 · 0 评论 -
C++面试题(48)------ 扑克牌中的顺子
从扑克牌中随机抽 5 张牌,判断是不是一个顺子(即是否连续的五个点数)。原创 2025-06-24 16:13:04 · 200 阅读 · 0 评论 -
C++面试题(47)------n个骰子的点数
把 n 个骰子扔在地上,所有骰子朝上一面的点数之和为 s。输入 n(骰子个数),请输出所有可能的 s 出现的概率。原创 2025-06-24 15:45:26 · 158 阅读 · 0 评论 -
C++面试题(46)------滑动窗口的最大值
定一个数组 nums 和一个大小为 k 的滑动窗口,窗口每次向右移动一位,请找出所有窗口中的最大值。原创 2025-06-24 15:31:28 · 159 阅读 · 0 评论 -
C++面试题(45)------翻转字符串
输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。原创 2025-06-24 14:49:46 · 172 阅读 · 0 评论 -
C++面试题(44)------和为s的两个数字
输入一个递增排序数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。原创 2025-06-24 14:24:39 · 201 阅读 · 0 评论 -
C++面试题(43)------数组中数值和下标相等的元素
给定一个整数数组 nums,返回所有满足 nums[i] == i 的元素的值。如果没有这样的元素,则返回一个指定的值(比如 -1 或者空列表)。原创 2025-06-23 17:39:13 · 208 阅读 · 0 评论 -
C++面试题(42)------0~n-1中缺失的数字
一个长度为 n 的递增排序数组,所有元素都在 0~n-1 范围内。理论上这个数组应该包含 0 到 n 的所有数字,但现在有且仅有一个数字缺失,请找出这个缺失的数字。原创 2025-06-23 16:22:57 · 265 阅读 · 0 评论 -
C++面试题(41)-----二叉树的深度
输入一棵二叉树的根节点,求该树的深度原创 2025-06-23 15:44:33 · 138 阅读 · 0 评论 -
C++面试题(40)------二叉搜索树的第k大节点
给定一棵二叉搜索树,请找出其中第 k 大的节点的值。原创 2025-06-23 15:20:46 · 149 阅读 · 0 评论 -
C++面试题(39)------在排序数组中查找数字
找出某个数字第一次出现的位置; 找出某个数字最后一次出现的位置; 返回该数字的起始和结束位置。原创 2025-06-23 15:09:38 · 205 阅读 · 0 评论 -
C++面试题(38)------两个链表的第一个公共节点
输入两个链表,找出它们的第一个公共节点。原创 2025-06-23 14:12:30 · 313 阅读 · 0 评论 -
C++面试题(37)-----数组中的逆序对(求数组中逆序对的个数)
在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个“逆序对”。输入一个数组,求出这个数组中逆序对的总数。原创 2025-06-23 13:41:43 · 205 阅读 · 0 评论 -
C++面试题(36)-------第一个只出现一次的字符
在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个特殊标记(如空格、'_' 或 -1 等)。原创 2025-06-20 17:36:59 · 156 阅读 · 0 评论 -
C++面试题(35)-------找出第 n 个丑数(Ugly Number)
我们把只包含质因子 2、3 和 5 的数称作丑数(Ugly Number)。例如 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。请编写一个函数,找出第 n 个丑数。原创 2025-06-20 17:29:18 · 307 阅读 · 0 评论 -
C++面试题(34)-------最长不含重复字符的子字符串
请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。原创 2025-06-20 17:01:15 · 162 阅读 · 0 评论 -
C++面试题(33)-------礼物的最大价值(最大路径和)
在一个 m × n 的网格的左上角有一个机器人,它每次只能向右或向下移动一步。网格中每个格子都有一个礼物,价值各不相同。请计算他从左上角移动到右下角一共能拿到礼物的最大总价值。原创 2025-06-20 16:41:43 · 302 阅读 · 0 评论 -
C++面试题(32)-------把数字翻译成字符串
给定一个数字,它要么作为一个数字单独翻译成一个字符('a' ~ 'z'),要么和后面一位组合,翻译成另一个字符。原创 2025-06-19 17:37:05 · 270 阅读 · 0 评论 -
C++面试题(31)------- 把数组排成最小的数
输入一个正整数数组,把数组里所有数字拼接起来排成一个数,使得拼接出的数是所有可能中最小的一个。返回拼接出的最小数的字符串形式。原创 2025-06-19 16:41:22 · 205 阅读 · 0 评论 -
C++面试题(30)------数字序列中某一位的数字
数字以 0123456789101112131415的形式按顺序排列成一个字符串。请输出任意位置 n 上的数字。原创 2025-06-19 16:22:59 · 327 阅读 · 0 评论 -
C++面试题(29)-------1~n整数中1出现的次数
输入一个整数 n,求从 1 到 n 这 n 个整数的十进制表示中 1 出现的总次数。原创 2025-06-19 16:08:29 · 299 阅读 · 0 评论 -
C++面试题(28)-------连续子数组的最大和
输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。原创 2025-06-19 15:22:44 · 142 阅读 · 0 评论 -
C++面试题(27)------增序数组中查找和为s的两个数字
输入一个递增排序的数组 nums 和一个整数目标值 target,从数组中找出任意一对满足 a + b = target 的两个数字。原创 2025-06-19 14:47:03 · 259 阅读 · 0 评论 -
C++面试题(26)-----数据流中的中位数
如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值原创 2025-06-19 11:35:45 · 295 阅读 · 0 评论 -
C++面试题(25)------最小的k个数
输入整数数组 arr,求出其中最小的 k 个数。原创 2025-06-18 18:28:05 · 189 阅读 · 0 评论 -
c++面试题(24)-----数组中出现次数超过一半的数字
数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。原创 2025-06-18 17:55:11 · 285 阅读 · 0 评论 -
C++面试题(23)------字符串的排列(全排列)
输入一个字符串,打印出该字符串中字符的所有排列。原创 2025-06-18 16:26:47 · 193 阅读 · 0 评论 -
C++面试题(22)------序列化二叉树(层次遍历 / BFS)
请实现两个函数,分别用来序列化和反序列化一个二叉树。原创 2025-06-18 16:01:40 · 210 阅读 · 0 评论 -
c++面试题(21)------二叉搜索树与双向链表(中序遍历 + 指针重连)
输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的节点,只能调整树中节点指针的指向。原创 2025-06-18 14:57:55 · 213 阅读 · 0 评论 -
C++面试题(20)------复杂链表的复制
请实现一个函数可以复制一个复杂链表,复杂链表的每个节点有一个 next 指针指向下一个节点,还有一个 random 指针指向链表中的任意节点或 null。原创 2025-06-18 13:53:49 · 198 阅读 · 0 评论 -
C++面试题(19)------二叉树中和为某一值的路径
输入一棵二叉树和一个整数,打印出二叉树中所有满足从根节点到叶节点的路径和等于该整数的路径。原创 2025-06-17 17:22:11 · 158 阅读 · 0 评论 -
C++中push 和push_back的区别
在C++中,push 和 push_back 是用于向容器添加元素的两个不同方法,它们通常应用于不同的容器类型,并且有着不同的使用场景和实现细节。原创 2025-06-17 16:59:05 · 344 阅读 · 0 评论 -
c++面试题(18)-----输入一个整数数组,判断该数组是否是某二叉搜索树(BST)的后序遍历结果
输入一个整数数组,判断该数组是否是某二叉搜索树(BST)的后序遍历结果。原创 2025-06-17 16:38:55 · 231 阅读 · 0 评论 -
C++面试题(17)------从上到下打印二叉树(层次遍历 / BFS)
从上到下按层打印二叉树,同一层的节点按从左到右的顺序打印,每一层打印为一行。原创 2025-06-17 15:50:29 · 105 阅读 · 0 评论