111
发表于|更新于|设计模式
|浏览量:
文章作者: 岁迹
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 岁迹!
相关推荐

2026-06-27
设计模式
以下是 10种设计模式 的完整技术实现方案,包含 类图(PlantUML)、应用场景、核心代码,按结构化方式组织: 工厂模式:封装对象创建逻辑,客户端无需知道具体类。 策略模式:定义可互换的算法族,运行时动态切换。 装饰器模式:动态扩展对象功能,避免继承层次过深。 组合模式:统一处理单个对象和对象集合,形成树形结构。 观察者模式:一对多依赖关系,状态变化自动通知所有依赖对象。 状态模式:对象行为随内部状态改变而变化,避免条件分支。 中介者模式:封装对象间交互,降低直接耦合。 单例模式:确保一个类只有一个实例,并提供全局访问点。 代理模式:控制对目标对象的访问,增强功能(如缓存、权限)。 享元模式:共享细粒度对象,减少内存开销(如字符、图形复用)。 模板方法模式:定义算法骨架,子类重写特定步骤而不改变结构 一、组合模式(Composite)想表示对象的部分-整体层次结构希望用户用一致的方式处理个体对象和组合对象。 类图 ———————————————————————————————————————————————————————————————- 核心代码123456789...

2026-06-27
异或相关面试题
异或:2进制相同为0,不同为1。同时满足交换律和结合律 0 ^ N = N N ^ N = 0 同或:2进制相同为1,不同为0 题一:如何不用额外遍历交换两个数默认情况是使用临时变量来存储一个数,最后交换。在此处我们使用异或运算,依靠异或的下列特点来进行交换。 123456789//默认情况int tmp = a;a = b;b = tmp;//依靠异或,但是条件是,A,B指向的是不同的内存区域a = a ^ b;b = a ^ b;a = a ^ b; 0 ^ N = N N ^ N = 0 题二:一个数组中有一种数出现了奇数次,其他数都出现了偶数次,怎么找到并且打印这种数(LeetCode136)默认情况是使用字典进行存储,将每种数作为键进行存储,值则为出现的次数,最后循环找到奇数次的那种数. 创建一个变量赋值为 0,使用该变量异或遍历每一个数组的值,即可。 1234567891011static void Main(string[] args){ int[] arrs = { 1, 1,2, 2, ...

2026-06-27
Json

2026-06-27
飞鱼科技
多维背包问题 有 N 种零件(如CPU、显卡、内存等),每种零件是一个类别。 每种零件有 M_i 个型号可选,每个型号有其价格 cost 和性能值 performance(性能值可能是一个综合评分,需要你预先定义好计算方式,例如CPU可用天梯图分数,显卡可用游戏帧数分数等)。 有一个总预算 B。 目标:从每种零件中选择恰好一个型号,使得总价格不超过预算 B,且所有零件的性能值之和(或根据权重加权之和)最大 清空数组的最小成本 操作1:删除单个元素。消耗固定成本 k。 操作2:清空整个当前数组。消耗成本为 k + n * mex,其中 n是当前数组的长度,mex是当前数组的最小未出现非负整数。 目标:通过一系列操作(每次可选择操作1或操作2),使得总成本最小。 世界树上Miku点 一共有 n个地点,它们由 n−1 条长度为 1 的双向道路连成了一棵无根树结构。其中,如果一个地点只延伸出了一条道路,那么这个地点将称为 Sekai 点。 Miku 点的定义如下: Miku 点一定不是 Sekai 点。 Miku 点是符合上一个条件的所有地点中,与相距最近的 Sekai ...

2026-06-27
数据库概论
数据库概论数据、数据库、数据库管理系统、数据库系统 是数据库中最常用的 4 个基本概念。 数据(Data):数据是描述事物的符号记录,是信息存在的一种形式。只有通过解释或处理的数据才能称为有用的信息。 数据库(Database,DB):数据按照一定格式存储在数据库内。数据库中存储的数据具有 永久存储、有组织、可共享 这 3 个基本特点。 数据库管理系统(Database Manage System,DBMS):专门用于建立和管理数据库的一套软件。实现对数据有效的管理和维护。 数据库系统(Database System,DBS):在计算机中引入数据库技术之后的系统。一个完整的数据库系统包括数据库、数据库管理系统、相关实用工具、应用程序、数据库管理员和用户。其中数据库管理员最终通过 DBMS 维护数据库,用户(程序员和数据库终端用户)则是数据库的服务对象。 数据模型模型:对现实世界的抽象。能反映事物的本质特征 数据模型:对现实世界数据特征的抽象。是数据库系统的核心和基础。 一般而言,数据具有动态、静态两种特征。 数据的静态特征:数据的基本结构、数据间的联系、对数据取值范围的约束 数...

2026-06-27
tap4fun面试
Tap4Fun一面1.实习的主要负责的模块是什么我主要负责的是: 卡牌逻辑相关模块(洗牌、发牌规则校验) UI 交互逻辑优化 性能优化(对象池、GC优化、资源加载) 整体偏功能开发 + 优化。 2.客户端的人员分配客户端 3 人: 主程:架构 + 核心系统 一名开发:主要功能模块 我:版本迭代 + UI + 优化 3.实习主要负责UI逻辑吗不是只做 UI,我的工作是以客户端逻辑为主,其中一部分是 UI 交互逻辑,同时也参与了功能开发和性能优化。 4.用的什么UI框架主要使用 Unity 自带的 UGUI,同时项目中有简单的 UI 管理框架,用于统一管理界面生命周期。 5.在Unity进行点击的时候如何响应到C#逻辑层的通过 Button 组件的 onClick 事件绑定 C# 方法来实现。 底层是 Unity 的事件系统(EventSystem)处理输入,再分发到 UI 组件。 6.如何进行UI响应的是,通过挂载还是代码的绑定Inspector 拖拽绑定 代码 AddListener 7.两者的优缺点拖拽方式: ✔ 简单直观 ❌ 不利于维护,容易丢引用 代码绑定: ✔ 可...
公告
记录游戏客户端开发、项目复盘和个人成长。