Questions tagged «puzzles»


15
棘手的逻辑难题-它们真的对评估编程技能有用吗?[关闭]
在我参加的上一次面试中,我被要求解决一个难题,在该难题下,假设两个桶分别具有blah和blah升的容量,那么我应该精确地测量blah升的水。在给定的时间(约5分钟)内,我无法解决难题。 面试官有些失望,并说程序员必须具备“这些”技能。我没明白他在说什么技能。 对于编程面试中通常会问到的这类难题,我一直感到奇怪。我根本不理解这类难题和编程之间的联系,如果有的话。面试官打算用这些难题来评估哪些技能呢?

11
从无限列表中获得100个最高数字
我的一位朋友被问到这个面试问题- “从一些无限的数字列表中不断涌入数字,您需要维护其中的数据结构以在任何给定的时间点返回前100个最高数字。假定所有数字都是整数。” 这很简单,您需要按降序排列已排序的列表,并跟踪该列表中的最低编号。如果获得的新号码大于该最低号码,则必须删除该最低号码,然后根据需要在排序列表中插入新号码。 然后问题扩大了- “您可以确保插入顺序为O(1)吗?可以吗?” 据我所知,即使您添加一个新数字到列表中并使用任何排序算法对其进行再次排序,对于quicksort(我认为),最好也应该是O(logn)。所以我的朋友告诉那是不可能的。但是他没有被说服,他要求维护任何其他数据结构而不是列表。 我想到了平衡二叉树,但即使在那儿,您也不会得到顺序为1的插入。因此,我现在也遇到了同样的问题。想知道是否有任何这样的数据结构可以针对上述问题以1的顺序进行插入,或者根本不可能。
53 numbers  big-o  puzzles 

5
香槟喷泉之谜
空杯子的水按以下顺序排列: 当您将液体倒入第一个玻璃杯中时,如果充满了液体,则多余的液体将以相同的数量流入玻璃杯2和3。当玻璃2充满时,多余的液体将流入4和5,依此类推。 给定N升的液体,每个玻璃的最大容量为1升,如果通过填写getWaterInBucket(int N, int X)X代表玻璃编号的函数倒入玻璃中来倒空N升的液体,则给出任何玻璃中存在的液体量。因此,例如,如果我想开始时有4升水,而我想在玻璃杯3中找到水,则功能为getWaterInBucket(4, 3) 如何以编程方式解决此问题?我试图使用Pascal的三角形找到数学解决方案。这没有用。我认为它是一棵树,因此我可以添加一个这样的参数getWaterInBucket(BTree root, int N, int X),然后为每个级别尝试一些递归解决方案,但是此问题中不允许使用参数。有明显的东西吗?

7
N皇后区,X由Y董事会决定问题面试问题
今天在一次采访中有人问我以下问题,从那以后我一直在思考。我无法回答,也无法在线找到解决方案。 给定一个棋盘尺寸为X乘以Y和N个皇后的棋盘,请确定是否有可能将这些皇后安排在棋盘上,以使它们不会互相攻击。 具有2个皇后的2 x 3电路板确实有解决方案,因此算法将返回true: Q . . . . Q 我正在寻找一种解决这个难题的编程方法,例如,不仅仅是纸上解决难题的方法。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.