刷题
刷题
阳光zfc
从哪儿跌倒,从哪儿爬起来。
展开
-
面试题67:把字符串转换成整数
题目描述 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0keys:这个问题的难题在于溢出的处理。int的范围是:-2的31次方到2的31次方减一。public class Solution { public int StrToInt(String str) { if(str==null) ...原创 2020-01-10 09:38:30 · 197 阅读 · 0 评论 -
面试题66:构建乘积数组
题目描述给定一个数组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]。不能使用除法。题目分析:由left[i]=A[0]A[1]…*A[i-1]得left[i]=left[i-1]A[i-1];同理由right[i]=A[i+1]…*A[n-1]得right[i]=right[i+1...原创 2020-01-09 16:49:01 · 118 阅读 · 0 评论 -
面试题65:不用加减乘除做加法
题目描述写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。public class Solution { public int Add(int num1,int num2) { while(num2!=0){ int temp=num1^num2; num2=(num1&num2)<...原创 2020-01-09 15:38:33 · 85 阅读 · 0 评论 -
面试题64:求1+2+3+...n
题目描述求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。public class Solution { public int Sum_Solution(int n) { int sum=(int)(Math.pow(n,2)+n)>>1; return ...原创 2020-01-09 15:11:38 · 136 阅读 · 0 评论 -
买卖股票的最佳时机
LeetCode121买卖股票的最佳时机(1) 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。注意你不能在买入股票前卖出股票。思路:假设第i个数组元素卖出的值最大,能获得最大利润,只需要找到前面的买入的最小值。class Solution { public int ma...原创 2020-01-09 14:56:39 · 99 阅读 · 0 评论 -
面试题61:扑克中的顺子
题目描述: LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张_)…他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子…LL不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为11,Q为12,K为13。上面的...原创 2020-01-08 16:53:27 · 211 阅读 · 0 评论 -
面试题59:队列的最大值
双端队列Deque ArrayDeque是继承自Deque接口,Deque继承自Queue接口,Queue是队列,而Deque是双端队列,也就是可以从前或者从后插入或者取出元素,也就是比队列存取更加方便一点,单向队列只能从一头插入,从另一头取出。ArrayDeque常用方法:题目一:滑动窗口的最大值思路: 这个题目用到了双端队列,熟悉了双端队列的操作,在存入一个数字的下标之前,首先...原创 2020-01-06 15:33:25 · 290 阅读 · 0 评论