记微软的一次面试

一面就凉凉了…一道中等难度的深度优先搜索题死活想不出来,无语了啊,其实还是不熟的原因,只能说技不如人还有很长的路要走,权当涨见识了

我尝试把题目回忆了一下:

“微服务”-在拥挤的软件体系结构大街上的又一个新名词。尽管我们的天性是轻蔑地掠过这些事物,但是这种术语描述了一种越来越受欢迎的软件系统样式。在过去的几年中,我们已经看到许多项目都使用这种样式,到目前为止,结果是非常积极的,以至于对于我们的许多同事来说,这已成为构建企业应用程序的默认样式。但是,令人遗憾的是,没有太多信息可以概述微服务风格是什么以及如何实现。

简而言之,微服务架构样式[1]是一种将单个应用程序开发为一组小服务的方法,每个小服务都在自己的进程中运行并与轻量级机制(通常是HTTP资源API)进行通信。这些服务围绕业务功能构建,并且可以由全自动部署机制独立部署。这些服务的集中管理几乎没有,可以用不同的编程语言编写并使用不同的数据存储技术。

目前,微软sharepoint组开始重构项目,并使用微服务技术,现在给出一些dll以及它的依赖,请你将这些dll组件合理的划分成几个组.

例如:
stswel.dll 依赖 onetutil.dll, a.dll, b.dll, c.dll
onetutil.dll 依赖 a.dll, b.dll, c.dll, d.dll
owssvr.dll 依赖 killswitch.dll,a.dll b.dll,e.dll, f.dll
killswitch.dll 依赖 e.dll, f.dll

划分成: [stswel.dll, onetutil.dll], [owssvr.dll, killswitch.dll]两组

输入:
shippingFiles = [stswel.dll, onetutil.dll, owssvr.dll, killswitch.dll]

dependencies= (stswel.dll, [onetutil.dll, a.dll, b.dll, c.dll]), (onetutil.dll, [a.dll, b.dll, c.dll, d.dll]),
(owssvr.dll, [killswitch.dll,a.dll b.dll,e.dll, f.dll]), (killswitch.dll, [e.dll, f.dll])

函数:
List FindIndependentComponents(List shippingFiles, Dictionary dependencies){
// write your code
}

记微软的一次面试

来源:kagamkuro

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年4月22日
下一篇 2022年4月22日

相关推荐