algorithm/算法/learn/大厂刷题/Second.md

1.8 KiB

题目一

给定数组hard和money,长度都为n,hard[i]表示i好的难度,money[i]表示i号工作的收入 给定数组ability,长度都为m,ability[j]表示j号人的能力 每一号工作,都可以提供无数的岗位,难度和收入都一样 但是每个人的能力必须>=这份工作的难度,才能上班 返回一个长度为M的数组ans,ans[j]表示j号人能获得的最好收入.

有序表 TreeMap

题目二

贩卖机只支持硬币支付,且收退都支持10,50,100三种面额 一次购买只能出一瓶可乐,且投钱和找零都遵循优先使用钱的原则 需要购买可乐数量是m, 其中手头拥有的10,50,100的数量分别为a,b,c 可乐的价格是x(x是10的倍数) 请计算出需要投入硬币次数

题目三

已知一个消息流会不断地吐出整数1~N, 单不一定按照顺序依次吐出 如果上次打印的序号为i,那么当i+1出现时 请打印i+1及其之后接收过的并且连续的所有数 直到1~N全部接收并打印完 请设计这种接收并打印的结构

等待那一个值到来 头开头hash表 尾开头hash表

判断以某个数开头拼接,以某个数结尾拼接

题目四

现有司机N*2人,调度中心将所有司机平分给A,B两个区域 第i个司机去A可得收入为income[i][0] 第i个司机去B可得收入为income[i][1] 返回所有调度方案中能使所有司机总收入最高的方案,是多少钱

题目七

给定一个数组arr,只能对arr中的一个子数组排序,但是想让arr整体都有序 返回满足这个设定的子数组中,最短的是多长

从左往右找最大值,不合适画错,确定右边那些不需要移动 从右网左找最小值,不合适画错,确定左边那些不需要移动.

题目八

HashMap添加setAll设置所有的value,复杂度仍o1 时间戳计数 setAllTime=3 all=7