常用算法整理
xiajiawen123
这个作者很懒,什么都没留下…
展开
-
2017.8.1拼多多内推内推笔试题(4)—迷宫寻路(状态压缩+BFS)
题目要求 假设一个探险家被困在了地底的迷宫之中,要从当前位置开始找到一条通往迷宫出口的路径。迷宫可以用一个二维矩阵组成,有的部分是墙,有的部分是路。迷宫之中有的路上还有门,每扇门都在迷宫的某个地方有与之匹配的钥匙,只有先拿到钥匙才能打开门。请设计一个算法,帮助探险家找到脱困的最短路径。如前所述,迷宫是通过一个二维矩阵表示的,每个元素的值的含义如下 0-墙,1-路,2-探险家的起始位置,3-迷宫的出原创 2017-08-07 22:21:07 · 4664 阅读 · 0 评论 -
2017.8.1拼多多内推内推笔试题(1)—最大乘积的求取(分治求K大(小))
8.1日参加了拼多多内推的笔试,由于自己实力差距答得很差,所以在这里整理反省下,话不多说,首先是第一道题目:题目描述: 给定一个无序数组,包含正数、负数和0,要求从中找出三个数的乘积,使得乘积最大,要求时间复杂度O(n),空间复杂度O(1)。 输入描述 第一行是数组大小n,第二行是无序整数数组A[n] 输出描述 满足条件的最大乘积 示例输入 4 3 4 1 2 输出 24第一眼看原创 2017-08-04 16:39:31 · 1253 阅读 · 0 评论 -
2017.8.1拼多多内推内推笔试题(2)—大数相乘
第二个题目相对思路比较简单:这里就简单说一下,首先题目要求是:题目要求 有两个用字符串表示的非常大的整数,算出他们的乘积,也是用字符串表示。不能用系统自带的大整数类型。 题目思路 思路是将两个字符串分别转换成数字分别存入两个数组,并对两个数组模拟乘法最后得到结果。 下面直接给出整体思路代码:#include <iostream> #include <string> #include <alg原创 2017-08-05 22:48:58 · 1156 阅读 · 0 评论 -
2017.8.1拼多多内推内推笔试题(3)—六一儿童节(贪心问题)
首先是题目:六一儿童节,老师带了很多好吃的巧克力到幼儿园。每块巧克力j的重量为w[j],对于每个小朋友i,当他分到的巧克力大小达到h[i] (即w[j]>=h[i]),他才会上去表演节目。老师的目标是将巧克力分发给孩子们,使得最多的小孩上台表演。可以保证每个w[i]> 0且不能将多块巧克力分给一个孩子或将一块分给多个孩子。 输入描述: 第一行:n,表示h数组元素个数 第二行:n个h数组元素原创 2017-08-05 23:39:46 · 805 阅读 · 1 评论