63.面试常用的设计模式总结(工厂、单例、建造者、适配器、装饰器、代理、策略、模板、观察者、迭代器、责任链) 1 什么是设计模式?概念:设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。1.1 设计模式分类创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模...
常见的设计模式如下: 单例模式:单例模式主要解决一个全局使用的类频繁的创建和销毁的问题。单例模式下可以确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。单例模式有三个要素:一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。
第四轮:命令模式的最佳实践和注意事项 1. 在使用命令模式时,有哪些最佳实践和注意事项? 1.1 最佳实践 1.2 注意事项 2. 你能给出一个命令模式不适合使用的例子吗? 第五轮:命令模式与其他设计模式的关系 1. 命令模式和策略模式有什么区别和联系? 1.1 区别 1.2 联系 2. 如何在命令模式中使用观察者模式来实现事...
AVL 树是高度平衡的,频繁的插入和删除,会引起频繁的rebalance,导致效率下降;红黑树不是高度平衡的,算是一种折中,插入最多两次旋转,删除最多三次旋转。 10.请问你了解哪些设计模式? 常见的设计模式如下: 单例模式:单例模式主要解决一个全局使用的类频繁的创建和销毁的问题。单例模式下可以确保某一个类只有一个实...
C/C++面试题之语言基础篇(二) 准备C/C++面试需要深入研究语言基础知识,掌握控制流结构、函数、指针和标准库,同时准备好回答各种与C/C++编程相关的问题,这将有助于你在面试中脱颖而出。希望这些建议对你有所帮助,祝你面试顺利! C++的内存管理 内存分区主要有:...
设计模式: 1.设计模式有哪些(23 种),你熟悉的单例模式的优缺点是什么? 2.手写实现单例模式,确保其实线程安全的 网络编程部分: 1.TCP三次握手、四次挥手 过程,为什么? 1)tcp基于连接的,udp基于无连接的 2)tcp对系统资源要求多,udp要求少 3)udp程序结构简单 ...
设计模式常见面试题汇总 设计模式常见⾯试题汇总 设计模式常见⾯试题汇总 1.说⼀下设计模式?你都知道哪些?答:设计模式总共有 23 种,总体来说可以分为三⼤类:创建型模式( Creational Patterns )、结构型模式( Structural Patterns )和⾏为型模式( Behavioral Patterns )。**分类** **包含** **...
事例: (该事例改编自一道网络设计模式面试题) 如现在你是一个设计师,你正在设计一种空调。但是你们的空调要支持3种模式。冷风模式(ColdWind), 热风模式(WramWind),无风模式(NoWind)。 当选择ColdWind模式,将输送冷风;当选择WarmWind模式,将输送热风;在选择NoWind模式时,空调什么都不做。你将考虑如何为空调设计...
问5:设计模式懂嘛,简单举个例子? 答:设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。 比如单例模式,保证一个类仅有一个实例,并提供一个访问它的全局访问点。 适用于:当类只能有一个实例而且客户可以从一个众所周知的访问点访问它时;当这个唯一实例应该是通过子...
树的深度和高度。一开始分别用了一个层序遍历和一个dfs,然后面试官问能否都在一个dfs里面呢,提示了一下在dfs是否可以传一个参数,然后解决了。 布隆过滤器介绍 为什么不用布隆过滤器 .数据结构相关,图的种类,表示方法,图有哪些经典算法+描述算法 求最大的k个数字,解法:优先队列(堆)或者快速排序 ...