offer

剑指Offer 20. 表示数值的字符串

**题目链接:** [剑指Offer 20. 表示数值的字符串](https://leetcode.cn/problems/biao-shi-shu-zhi-de-zi-fu-chuan-lcof/description/?envType=study-plan-v2&envId=coding-int ......
字符串 数值 字符 Offer 20

剑指Offer 18. 删除链表的节点

**题目链接:** [剑指Offer 18. 删除链表的节点](https://leetcode.cn/problems/shan-chu-lian-biao-de-jie-dian-lcof/description/?envType=study-plan-v2&envId=coding-inter ......
节点 Offer 18

剑指Offer 17. 打印从1到最大的n位数

**题目链接:** [剑指Offer 17. 打印从1到最大的n位数](https://leetcode.cn/problems/da-yin-cong-1dao-zui-da-de-nwei-shu-lcof/description/?envType=study-plan-v2&envId=cod ......
位数 Offer 17

剑指Offer 16. 数值的整数次方

**题目链接:** [剑指Offer 16. 数值的整数次方](https://leetcode.cn/problems/shu-zhi-de-zheng-shu-ci-fang-lcof/?envType=study-plan-v2&envId=coding-interviews) **题目描述: ......
整数 数值 Offer 16

剑指Offer 15. 二进制中1的个数

**题目链接:** [剑指Offer 15. 二进制中1的个数](https://leetcode.cn/problems/er-jin-zhi-zhong-1de-ge-shu-lcof/description/?envType=study-plan-v2&envId=coding-intervi ......
二进制 个数 Offer 15

剑指Offer 14- II. 剪绳子 II

**题目链接:** [剑指Offer 14- II. 剪绳子 II](https://leetcode.cn/problems/jian-sheng-zi-ii-lcof/?envType=study-plan-v2&envId=coding-interviews) **题目描述:** 给你一根长度 ......
绳子 Offer II 14

剑指 Offer 59 - I. 滑动窗口的最大值

题不难,但理解思路很重要。 做法是单调队列。 如果求滑动窗口的最大值,那么必须在单调队列保持严格单调递减(只能小于,小于等于也不行),为啥不行还不是很清楚。 并且,单调队列一定存储的是数组的索引!!否则无法确定滑动窗口的开始位置以及开始时的队列存储最大值的情况。 class Solution { p ......
最大值 Offer 59

剑指 Offer 48. 最长不含重复字符的子字符串(中等)

题目: ![](https://img2023.cnblogs.com/blog/2679751/202308/2679751-20230825204039900-1316189837.png) ``` class Solution { //本题采用双指针滑动窗口的方法 public: int le ......
字符 字符串 Offer 48

剑指 Offer 46. 把数字翻译成字符串(中等)

题目: ![](https://img2023.cnblogs.com/blog/2679751/202308/2679751-20230825163545791-888221067.png) ``` class Solution { //本题只需要返回不同翻译方法的数量,不需要列出所有翻译结果,所 ......
字符串 字符 数字 Offer 46

【剑指Offer】64、滑动窗口的最大值

# 【剑指Offer】64、滑动窗口的最大值 **题目描述:** 给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2, ......
最大值 Offer

《剑指Offer》-60-n 个骰子的点数

打印出 n 个骰子所能扔出的所有点数的概率 ### 思路 dp[i][j] 表示 i 个骰子,投出 j 的概率 而概率 = 点数出现的次数 / 总次数 而 i 个骰子掷出 j 的次数 = i - 1 个骰子掷出 j- 1 的次数 + i - 1 个骰子掷出 j -2 的次数 + … + i - 1 ......
骰子 点数 Offer 60

【剑指Offer】63、数据流中的中位数

# 【剑指Offer】63、数据流中的中位数 **题目描述:** 如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用Ge ......
中位数 数据流 数据 Offer

【剑指Offer】46、圆圈中最后剩下的数

# 【剑指Offer】46、圆圈中最后剩下的数 **题目描述:** 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。每 ......
圆圈 Offer

剑指 Offer 47. 礼物的最大价值(中等)

题目: ![](https://img2023.cnblogs.com/blog/2679751/202308/2679751-20230824204353561-1984941428.png) ``` class Solution { public: int maxValue(vector>& g ......
礼物 价值 Offer 47

剑指 Offer 63. 股票的最大利润(中等)

题目: ![](https://img2023.cnblogs.com/blog/2679751/202308/2679751-20230824200740170-1968883688.png) ``` class Solution { public: int maxProfit(vector& p ......
利润 股票 Offer 63

《剑指Offer》-51-数组中数字出现的次数

数组中除了两个数字,其他数字都出现了两次,找出这两个只出现了一次的数字 判断一个数字出现过没有,我们最常用的就是 set,set 中存在,那么就说明已经出现过了 但是这里要求空间复杂度`O(1)`,所以得换个思路 于是我想到了排序,将数组排序后相同的两个重复元素肯定是相邻的,这样我们只需要一次遍历就 ......
数组 次数 数字 Offer 51

【剑指Offer】45、扑克牌顺子

# 【剑指Offer】45、扑克牌顺子 **题目描述:** LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张_)...他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王, ......
扑克牌 扑克 Offer

【剑指Offer】42、和为S的两个数字

# 【剑指Offer】42、和为S的两个数字 **题目描述:** 输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。 **输出描述:** 对应每个测试案例,输出两个数,小的先输出。 **解题思路:** 对于本题,比上一题简 ......
两个 数字 Offer

【剑指Offer】41、和为S的连续正数序列

# 【剑指Offer】41、和为S的连续正数序列 **题目描述:** 小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:1 ......
正数 序列 Offer

剑指 Offer 10- I. 斐波那契数列(简单)

题目: ![](https://img2023.cnblogs.com/blog/2679751/202308/2679751-20230823210303470-2008442646.png) ``` class Solution { //动态规划 public: int fib(int n) { ......
数列 Offer 10

剑指 Offer 41. 数据流中的中位数(困难)

题目: ![](https://img2023.cnblogs.com/blog/2679751/202308/2679751-20230823202939041-4798572.png) ``` class MedianFinder { //暴力解法:每添加一个数字后用sort进行排序,然后返回中 ......
中位数 数据流 数据 Offer 41

【剑指Offer】33、丑数

# 【剑指Offer】33、丑数 **题目描述:** 把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。 **解题思路:** 所谓一个数m是另一个数n的因子,是指n能被 ......
Offer

【剑指Offer】31、从1到n整数中1出现的次数

# 【剑指Offer】31、从1到n整数中1出现的次数 **题目描述:** 求出1-13的整数中1出现的次数,并算出100-1300的整数中1出现的次数?为此他特别数了一下1-13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希望你们帮帮他,并把问题 ......
整数 次数 Offer

【剑指Offer】29、最小的K个数

# 【剑指Offer】29、最小的K个数 **题目描述:** 输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4。 **解题思路:** 本题最直观的解法就是将输入的n个整数排序,排序之后位于最前面的k个数就是最小的k个数,这取决于排 ......
个数 Offer

剑指 Offer 51. 数组中的逆序对(困难)

题目: ![](https://img2023.cnblogs.com/blog/2679751/202308/2679751-20230822211543951-605508334.png) ``` class Solution { //这道题利用了归并排序(分而治之)的思想,就是在每一次排序中统 ......
逆序 数组 Offer 51

【剑指Offer】48、不用加减乘除做加法

# 【剑指Offer】48、不用加减乘除做加法 **题目描述:** 写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。 **解题思路:** 本题同样是对发散思维能力的一个考察。首先,我们需要考虑是要求和却不能使用四则运算,那么还能用什么呢?除了四则运算以外,还可以进行计算 ......
加减乘除 加法 不用 Offer

【剑指Offer】11、二进制中1的个数

# 【剑指Offer】11、二进制中1的个数 **题目描述:** 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 **解题思路:** 本题有以下两个解决方案: (1)**依次判断每一位**。判断的方法是先与1相与,为1则说明该位为1,为0说明该位为0,然后将1左移,再判断倒数第二位 ......
二进制 个数 Offer

【剑指Offer】47、求1+2+3+4+···+n

# 【剑指Offer】47、求1+2+3+4+···+n **题目描述:** 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。 **解题思路:** 本题本身没有太多的实际意义,但是可以对程序员的发散思维能力 ......
183 Offer

剑指 Offer 45. 把数组排成最小的数(中等)

题目: ![](https://img2023.cnblogs.com/blog/2679751/202308/2679751-20230821220815065-610363687.png) ``` class Solution { public: string minNumber(vector& ......
数组 Offer 45

剑指 Offer 33. 二叉搜索树的后序遍历序列(中等)

题目: ![](https://img2023.cnblogs.com/blog/2679751/202308/2679751-20230821202253841-558226362.png) 结合以下图理解该方法 ![](https://img2023.cnblogs.com/blog/26797 ......
序列 Offer 33