上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 60 下一页
摘要: 题目描述给你一根长度为n的绳子,请把绳子剪成m段(m、n都是整数,n>1并且m>1),每段绳子的长度记为k[0],k[1],...,k[m]。请问k[0]xk[1]x...xk[m]可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。输入描述:输入一个数n,意义见题面。(2 <= n <= 60)输出描述:输出答案。分析:抽象一下题目就... 阅读全文
posted @ 2019-09-27 15:38 西*风 阅读(288) 评论(0) 推荐(1)
摘要: 题目描述如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。分析:大根堆小根堆法现在假设数组有序,如果我们把数组的前半部分放入一个大根堆,数组的后半部分放入一个小根堆,那... 阅读全文
posted @ 2019-09-27 11:25 西*风 阅读(147) 评论(0) 推荐(0)
摘要: 题目描述给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]。不能使用除法。分析:注意,题目要求不能使用除法!我们发现如果采取暴力的操作的话,会有很多的重复性操作,我们可以采用数组记录来减少重复性的操作采用一个二维dp数组来记录乘积和,dp[i][j]代表索引i到索... 阅读全文
posted @ 2019-09-27 10:44 西*风 阅读(131) 评论(0) 推荐(0)
摘要: 题目描述每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。每次喊到m-1的那个小朋友要出列唱首歌,然后可以在礼品箱中任意的挑选礼物,并且不再回到圈中,从他的下一个小朋友开始,继续0...m-1报数....这样下去....... 阅读全文
posted @ 2019-09-27 10:20 西*风 阅读(163) 评论(0) 推荐(0)
摘要: 题目描述请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。分析:从上到下直接遍历,利用栈或者队列暂存结点,注意结点的存和取都是成对的class Solution{public: bool isSymmetrical(TreeNode* root) { if(root==NULL) retur... 阅读全文
posted @ 2019-09-27 09:31 西*风 阅读(161) 评论(0) 推荐(0)
摘要: 题目描述 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007 输入描述: 题目保证输入的数组中没有的相同的数字 数据范围: 对于%50的数据,siz 阅读全文
posted @ 2019-09-26 21:08 西*风 阅读(449) 评论(0) 推荐(0)
摘要: 题目描述写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。分析:看到这种题目,就知道应该采用位运算两个数异或,相当于这两个数的每一位相加,但是不考虑进位两个数相与,并且左移一位,相当于求得进位然后将上面两步的结果相加,就是结果int Add(int a, int b){ if(a==0) return b; if(b==0) ret... 阅读全文
posted @ 2019-09-26 11:08 西*风 阅读(148) 评论(0) 推荐(0)
摘要: 题目描述小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:18,19,20,21,22。现在把问题交给你,你能不能也很快的找出所有和为S的连续正数序列? Good Luck!输出描述:输出所有和为S的连续正数序列。序列内按... 阅读全文
posted @ 2019-09-26 10:46 西*风 阅读(145) 评论(0) 推荐(0)
摘要: 题目描述在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。例如,链表1->2->3->3->4->4->5 处理后为 1->2->5分析:有两种写法,思路都是遍历链表,然后删除重复结点写法1:非递归,双指针法1)增加一个虚拟头结点p,便于处理2)现在设定两个指针first和last,first先指向当前结点,last往后移动寻找和当前结点值不同的结点,... 阅读全文
posted @ 2019-09-26 10:17 西*风 阅读(227) 评论(0) 推荐(0)
摘要: 题目描述输入一棵二叉树,判断该二叉树是否是平衡二叉树。分析:采用后序遍历的方式判断左右子树的高度差是否大于1class Solution {public:bool flag;int f(TreeNode* root){ if(root) { //后序遍历,从下网往上,每个结点只遍历一次 int x=f(root->left); int ... 阅读全文
posted @ 2019-09-25 09:31 西*风 阅读(128) 评论(0) 推荐(0)
上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 60 下一页