八吨车 记录所学,在校大二,软件工程,欢迎一起交流
摘要: 工厂模式在$\color{red}{接口}$或$\color{red}{抽象方法}$中定义了创建对象的方法,而将具体的创建对象的过程在$\color{red}{子类}$中实现,用户只需通过接口创建需要的对象即可,不用关注对象的具体创建过程。工厂模式本质上就是用工厂方法代替new操作创建一种实例化对象 阅读全文
posted @ 2020-05-22 22:27 八吨车 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 建造者模式 用多个简单的对象创建一个复杂的对象,将一个复杂对象的构建与其表示分离,使得同样的构建过程可以创建不同的表示。 建造者模式在设计时有四种角色: 1.Builder:复杂产品对象的抽象接口 2.ConcreteBuilder:Builder的实现类,主要定义装配流程 3.Director:构 阅读全文
posted @ 2020-05-22 22:26 八吨车 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 题意:输入整数数组 arr ,找出其中最小的 k 个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。 类似这种topK问题,都可以用堆排序的变形来解决 堆排序代码: 参考: https://www.cnblogs.com/wanglei5205/p/8733 阅读全文
posted @ 2020-05-22 22:23 八吨车 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 今天在网上看到字节的一个概率面试题: 一段绳子剪成三段,求能组成三角形的概率 很像我们初中的知识,由三角形定理我们可知:任意两边之和大于第三边 设绳长为n,一条绳为x,另一条为y,则第三条绳长为(n x y) 列方程: $$\begin{cases} x+y n x y\\ n y y\\ n x 阅读全文
posted @ 2020-05-22 22:16 八吨车 阅读(742) 评论(0) 推荐(0) 编辑