随笔分类 -  《剑指offer》

摘要:剑指offer(66) 剑指 Offer 66. 构建乘积数组 给定一个数组 A[0,1,…,n-1],请构建一个数组 B[0,1,…,n-1],其中 B[i] 的值是数组 A 中除了下标 i 以外的元素的积, 即 B[i]=A[0]×A[1]×…×A[i-1]×A[i+1]×…×A[n-1]。不能 阅读全文
posted @ 2022-05-08 13:32 BailanZ 阅读(15) 评论(0) 推荐(0) 编辑
摘要:剑指offer(65) 剑指 Offer 65. 不用加减乘除做加法 写一个函数,求两个整数之和,要求在函数体内不得使用 “+”、“-”、“*”、“/” 四则运算符号。 示例: 输入: a = 1, b = 1 输出: 2 提示: a, b 均可能是负数或 0 结果不会溢出 32 位整数 根据题目可 阅读全文
posted @ 2022-05-08 09:51 BailanZ 阅读(11) 评论(0) 推荐(0) 编辑
摘要:剑指offer(64) 剑指 Offer 64. 求1+2+…+n 求 1+2+...+n ,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。 示例 1: 输入: n = 3 输出: 6 示例 2: 输入: n = 9 输出: 45 阅读全文
posted @ 2022-05-08 09:43 BailanZ 阅读(16) 评论(0) 推荐(0) 编辑
摘要:剑指offer(63) 剑指 Offer 63. 股票的最大利润 假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少? 示例 1: 输入: [7,1,5,3,6,4] 输出: 5 解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 阅读全文
posted @ 2022-05-08 09:08 BailanZ 阅读(8) 评论(0) 推荐(0) 编辑
摘要:剑指offer(62) 剑指 Offer 62. 圆圈中最后剩下的数字 0,1,···,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字(删除后从下一个数字开始计数)。求出这个圆圈里剩下的最后一个数字。 例如,0、1、2、3、4这5个数字组成一个圆圈,从数字0开始每次删除第 阅读全文
posted @ 2022-05-07 22:51 BailanZ 阅读(16) 评论(0) 推荐(0) 编辑
摘要:剑指offer(61) 剑指 Offer 61. 扑克牌中的顺子 从若干副扑克牌中随机抽 5 张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。 示例 1: 输入: [1,2,3,4, 阅读全文
posted @ 2022-05-07 21:31 BailanZ 阅读(14) 评论(0) 推荐(0) 编辑
摘要:剑指offer(60) 剑指 Offer 60. n个骰子的点数 把n个骰子扔在地上,所有骰子朝上一面的点数之和为s。输入n,打印出s的所有可能的值出现的概率。 你需要用一个浮点数数组返回答案,其中第 i 个元素代表这 n 个骰子所能掷出的点数集合中第 i 小的那个的概率。 示例 1: 输入: 1 阅读全文
posted @ 2022-05-06 10:49 BailanZ 阅读(13) 评论(0) 推荐(0) 编辑
摘要:剑指offer(59)-II 剑指 Offer 59 - II. 队列的最大值 请定义一个队列并实现函数 max_value 得到队列里的最大值,要求函数max_value、push_back 和 pop_front 的均摊时间复杂度都是O(1)。 若队列为空,pop_front 和 max_val 阅读全文
posted @ 2022-05-06 09:52 BailanZ 阅读(15) 评论(0) 推荐(0) 编辑
摘要:剑指offer(59)-I 剑指 Offer 59 - I. 滑动窗口的最大值 给定一个数组 nums 和滑动窗口的大小 k,请找出所有滑动窗口里的最大值。 示例: 输入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3 输出: [3,3,5,5,6,7] 解释: 滑动窗口的 阅读全文
posted @ 2022-05-06 09:34 BailanZ 阅读(16) 评论(0) 推荐(0) 编辑
摘要:剑指offer(58)-II 剑指 Offer 58 - II. 左旋转字符串 难度简单242 字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。 阅读全文
posted @ 2022-05-06 08:53 BailanZ 阅读(16) 评论(0) 推荐(0) 编辑
摘要:剑指offer(58)-I 剑指 Offer 58 - I. 翻转单词顺序 难度简单203 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。为简单起见,标点符号和普通字母一样处理。例如输入字符串"I am a student. ",则输出"student. a am I"。 示例 1 阅读全文
posted @ 2022-05-06 08:46 BailanZ 阅读(25) 评论(0) 推荐(0) 编辑
摘要:剑指offer(57)-II 剑指 Offer 57 - II. 和为s的连续正数序列 输入一个正整数 target ,输出所有和为 target 的连续正整数序列(至少含有两个数)。 序列内的数字由小到大排列,不同序列按照首个数字从小到大排列。 示例 1: 输入:target = 9 输出:[[2 阅读全文
posted @ 2022-05-05 22:17 BailanZ 阅读(15) 评论(0) 推荐(0) 编辑
摘要:剑指offer(57) 剑指 Offer 57. 和为s的两个数字 输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。如果有多对数字的和等于s,则输出任意一对即可。 示例 1: 输入:nums = [2,7,11,15], target = 9 输出:[2,7] 或者 [ 阅读全文
posted @ 2022-05-05 21:56 BailanZ 阅读(16) 评论(0) 推荐(0) 编辑
摘要:剑指offer(56)- II 剑指 Offer 56 - II. 数组中数字出现的次数 II 难度中等337 在一个数组 nums 中除一个数字只出现一次之外,其他数字都出现了三次。请找出那个只出现一次的数字。 示例 1: 输入:nums = [3,4,3,3] 输出:4 示例 2: 输入:num 阅读全文
posted @ 2022-05-05 21:52 BailanZ 阅读(24) 评论(0) 推荐(0) 编辑
摘要:剑指offer(56)- I 剑指 Offer 56 - I. 数组中数字出现的次数 一个整型数组 nums 里除两个数字之外,其他数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。 示例 1: 输入:nums = [4,1,4,6] 输出:[1, 阅读全文
posted @ 2022-05-05 21:32 BailanZ 阅读(15) 评论(0) 推荐(0) 编辑
摘要:剑指offer(55)- II 剑指 Offer 55 - II. 平衡二叉树 输入一棵二叉树的根节点,判断该树是不是平衡二叉树。如果某二叉树中任意节点的左右子树的深度相差不超过1,那么它就是一棵平衡二叉树。 示例 1: 给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 2 阅读全文
posted @ 2022-05-05 11:57 BailanZ 阅读(13) 评论(0) 推荐(0) 编辑
摘要:剑指offer(55)- I 剑指 Offer 55 - I. 二叉树的深度 输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径的长度为树的深度。 例如: 给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 阅读全文
posted @ 2022-05-05 10:48 BailanZ 阅读(16) 评论(0) 推荐(0) 编辑
摘要:剑指offer(54) 剑指 Offer 54. 二叉搜索树的第k大节点 难度简单294 给定一棵二叉搜索树,请找出其中第 k 大的节点的值。 示例 1: 输入: root = [3,1,4,null,2], k = 1 3 / \ 1 4 \ 2 输出: 4 示例 2: 输入: root = [5 阅读全文
posted @ 2022-05-05 10:42 BailanZ 阅读(21) 评论(0) 推荐(0) 编辑
摘要:剑指offer(53)- II 剑指 Offer 53 - II. 0~n-1中缺失的数字 一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0~n-1之内。在范围0~n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字。 示例 1: 输入: [0,1,3] 输出 阅读全文
posted @ 2022-05-05 10:27 BailanZ 阅读(21) 评论(0) 推荐(0) 编辑
摘要:剑指offer(53)- I 剑指 Offer 53 - I. 在排序数组中查找数字 I 难度简单309 统计一个数字在排序数组中出现的次数。 示例 1: 输入: nums = [5,7,7,8,8,10], target = 8 输出: 2 示例 2: 输入: nums = [5,7,7,8,8, 阅读全文
posted @ 2022-05-05 10:13 BailanZ 阅读(14) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示