个数offer

【剑指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

2023-08-24:请用go语言编写。给定一个长度为n的数组arr, 现在你有一次机会, 将其中连续的K个数全修改成任意一个值, 请你计算如何修改可以使修改后的数 列的最长不下降子序列最长。 请输出

2023-08-24:请用go语言编写。给定一个长度为n的数组arr, 现在你有一次机会, 将其中连续的K个数全修改成任意一个值, 请你计算如何修改可以使修改后的数 列的最长不下降子序列最长。 请输出这个最长的长度。 最长不下降子序列:子序列中的每个数不小于在它之前的数。 1 = n { fmt.P ......
数组 序列 可以使 长度 个数

统计文件个数

> 博客地址:https://www.cnblogs.com/zylyehuo/ ```python import os count = 0 # 遍历文件夹 def walkFile(file): for root, dirs, files in os.walk(file): # root 表示当前 ......
个数 文件

《剑指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

2.Acwing基础课第786题-简单-第k个数

# 2.Acwing基础课第786题-简单-第k个数 ## 题目描述 给定一个长度为 n 的整数数列,以及一个整数 k,请用快速选择算法求出数列从小到大排序后的第 k 个数。 ## 输入格式 第一行包含整数 n 和 k。 第二行包含 n 个整数(所有整数均在1~范围内),表示整个数列。 ## 输出格 ......
基础课 个数 基础 Acwing 786

C语言 计算一个数的阶乘两种方法

// ConsoleApplication15.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。// #include <iostream>#include <stdio.h>using namespace std; long fact(int n);//使用循环方法long ......
阶乘 个数 语言 方法

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

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

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

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

Leetcode 59. 螺旋矩阵 II && 剑指 Offer 29. 顺时针打印矩阵

这两个题非常相似,但是前者较为简单,后者较难。 由于前者访问的矩阵是方阵,因此可以通过迭代去做(因为方阵每次迭代,长和宽缩水的大小是一样的,但是矩阵不可以,因为矩阵最后一次迭代,长和宽的缩水不一定一样) class Solution { public: vector<vector<int>> gen ......
矩阵 时针 螺旋 amp Leetcode

【剑指Offer】12、数值的整数次方

# 【剑指Offer】12、数值的整数次方 **题目描述:** 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。 **解题思路:** 本题看似比较简单,是一个简单的指数运算,但需要完整的考虑到所有情况。首先,对于底数,如果底数为0,则0的 ......
整数 数值 Offer

【剑指Offer】10、矩形覆盖

# 【剑指Offer】10、矩形覆盖 **题目描述:** 我们可以用2 X 1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2 X 1的小矩形无重叠地覆盖一个2 X n的大矩形,总共有多少种方法? **解题思路:** 我们可以以2 X 8的矩形为例。 ![](https://img2023.cnb ......
矩形 Offer

【剑指Offer】9、变态跳台阶

# 【剑指Offer】9、变态跳台阶 **题目描述:** 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 **解题思路:** 当只有一级台阶时,f(1)=1;当有两级台阶时,f(2)=f(2-1)+f(2-2);一般情况下,当有n级台阶 ......
台阶 变态 Offer

剑指 Offer 68 - I. 二叉搜索树的最近公共祖先(简单)

题目: ![](https://img2023.cnblogs.com/blog/2679751/202308/2679751-20230820102811291-30603744.png) ``` class Solution { public: TreeNode* lowestCommonAnc ......
祖先 Offer 68

【剑指Offer】8、跳台阶

# 【剑指Offer】8、跳台阶 **题目描述:** 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 **解题思路:** 首先考虑最简单的情况,如果只有1级台阶,显然只有一种跳法。如果有两级台阶,就有两种跳法:一种是分两次跳,一 ......
台阶 Offer

【剑指Offer】7、斐波那契数列

# 【剑指Offer】7、斐波那契数列 **题目描述:** 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。假设n<=39。 **解题思路:** 斐波那契数列:0,1,1,2,3,5,8........ 总结起来就是:第一项是0,第二项是1,后续 ......
数列 Offer