
2017.08今日头条笔试题
dingpiao190
这个作者很懒,什么都没留下…
展开
-
【今日头条2017内推】调度问题
解题思路首先对所有的任务按照 提出时间,优先级,所需时间进行排序,即提出时间相等时按照优先级排序,优先级也相等时按照所需时间进行排序。可以维护一个长度为M的堆,M为程序员员的数量,这个堆中存储的值是程序员完成某个任务的完成时间点,排序之后依次取任务,然后在堆中取一个程序员,取堆顶的那个,这个任务的完成时间即为提出任务时间和堆中取出的时间的较大值加上任务所需时间。然后再将这个时间更新进堆中。 需要注原创 2017-08-23 17:19:19 · 601 阅读 · 0 评论 -
【今日头条2017内推笔试题】数组序列
解题思路 寻找数组的中的最小值,则包含最小值的序列的最大乘积值为data[start]*data[end]*min。 最终的最大值分两种情况 包含min,即上面所列的表达式 不包含min,即最大值在[start,min角标-1] 和[start,min角标+1]这两段中 进行递归调用寻找最终的最大值。import java.util.Scanner;public class Main {原创 2017-08-23 17:11:34 · 936 阅读 · 0 评论 -
【今日头条2017内推笔试题】二维平面整数点集
解题思路 对所有的坐标点对y进行排序,然后按y排序顺序由大到小进行遍历,定义一个变量来保存当前已经遍历坐标点的最大x值,如果,后序节点的x值大于保存的最大x值,则输出。因为已经对y按大小进行排序,越往后遍历y值越小,而这个点想为边界点只能x值大于已经遍历序列的最大x值。并且这个x是逐渐递增的,题意要求x从小到大输出,因而直接输出即可。 import java.util.Arrays; import原创 2017-08-23 17:05:15 · 2186 阅读 · 2 评论