- 【剑指Offer】64、滑动窗口的最大值
【剑指Offer】64、滑动窗口的最大值题目描述:给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5};针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个:{[2,3,......
- 【剑指Offer】63、数据流中的中位数
【剑指Offer】63、数据流中的中位数题目描述:如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用Ge......
- 《剑指Offer》-60-n 个骰子的点数
打印出n个骰子所能扔出的所有点数的概率思路dp[i][j]表示i个骰子,投出j的概率而概率=点数出现的次数/总次数而i个骰子掷出j的次数=i-1个骰子掷出j-1的次数+i-1个骰子掷出j-2的次数+…+i-1个骰子掷出j-6的次数,因为这个单独的骰子能掷......
- 【剑指Offer】46、圆圈中最后剩下的数
【剑指Offer】46、圆圈中最后剩下的数题目描述:每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报......
- 剑指 Offer 47. 礼物的最大价值(中等)
题目:classSolution{public:intmaxValue(vector<vector<int>>&grid){if(grid.empty())return0;//要考虑棋盘为空的情况直接返回0vector<vector<int>>dp(grid.size(),vector(grid[0].size(),0));//定义一个和棋盘同样大小的dp......
- 剑指 Offer 63. 股票的最大利润(中等)
题目:classSolution{public:intmaxProfit(vector<int>&prices){if(prices.empty())return0;//要考虑数组为空的情况vector<vector<int>>dp(prices.size(),vector<int>(2,0));//确定动态数组大小和下表含义dp[i][j]:第i天j状态......
- 【剑指Offer】45、扑克牌顺子
【剑指Offer】45、扑克牌顺子题目描述:LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张_)...他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh......
- 【剑指Offer】41、和为S的连续正数序列
【剑指Offer】41、和为S的连续正数序列题目描述:小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:18,19,......
- 【剑指Offer】42、和为S的两个数字
【剑指Offer】42、和为S的两个数字题目描述:输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。输出描述:对应每个测试案例,输出两个数,小的先输出。解题思路:对于本题,比上一题简单一些。看到题目,我们的第......
- 剑指 Offer 10- I. 斐波那契数列(简单)
题目:classSolution{//动态规划public:intfib(intn){if(n<=1)returnn;vector<int>dp(2,0);//确定dp数组以及下标的含义dp[0]=0;//dp数组初始化dp[1]=1;for(inti=2;i<=n;i++){//递推顺序从......