• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

RomanLin

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

上一页 1 2 3 4 5 6 7 8 9 10 下一页

2025年2月9日

【设计模式与体系结构】行为型模式-备忘录模式

摘要: 简介 备忘录模式(Memento Pattern)是一种行为型设计模式,它允许在不破坏封装性的前提下,捕获并保存对象的内部状态,以便在对象需要时,恢复到之前的状态。 备忘录模式的角色 发起人(Originator)类:负责创建一个备忘录对象,用以记录当前时刻自身的内部状态,并且可以使用备忘录对象恢复 阅读全文

posted @ 2025-02-09 13:14 RomanLin 阅读(39) 评论(0) 推荐(0)

2025年2月5日

【设计模式与体系结构】行为型模式-责任链模式

摘要: 简介 责任链模式(Chain Of Responsibility Pattern)允许沿着处理者链进行发送,避免请求者与发送者耦合在一起,每个处理者在收到请求后选择处理或者传递给下一个处理者,让多个对象都有接收到请求的可能性,这些对象形成链式结构,并且沿着这条链路传递请求,直至有对象处理请求。值得注 阅读全文

posted @ 2025-02-05 19:43 RomanLin 阅读(57) 评论(0) 推荐(0)

【离线+LogTrick】codeforces 1878 E. Iva & Pav

摘要: 题目 https://codeforces.com/problemset/problem/1878/E 题意 输入一个正整数 \(T(1 \leq T \leq 10^4)\),代表 \(T\) 组测试用例,对于每个测试用例: 第一行,输入一个整数 \(n(1 \leq 2 \times 10^5) 阅读全文

posted @ 2025-02-05 19:42 RomanLin 阅读(91) 评论(0) 推荐(0)

【设计模式与体系结构】行为型模式-策略模式

摘要: 简介 策略模式(Strategy Pattern)定义一系列的类,每个类封装一个算法,并且使它们之间可以相互转换,这些封装了算法的类可以称为策略。为保证这些策略在使用时具有一致性,一般会提供一个抽象策略类来制定规则,而每种策略对应一个具体策略类。 策略模式的角色 抽象策略(Strategy)类:它为 阅读全文

posted @ 2025-02-05 19:42 RomanLin 阅读(55) 评论(0) 推荐(0)

2025年1月21日

【反悔贪心】AtCoder ABC376 E. Max × Sum

摘要: 前言 反悔贪心是贪心算法的一种改进或扩展策略。贪心算法是指仅考虑每步最优,从而达到全局最优。在传统贪心算法的基础上,反悔贪心允许算法在一定条件下进行回溯或调整。简言之就是采取骑驴找马的策略,在别无选择的情况下,先选择当前最优解,当有更好的选择的时候,将之前最糟糕的选择替换为新的选择。 题目 http 阅读全文

posted @ 2025-01-21 21:19 RomanLin 阅读(119) 评论(0) 推荐(0)

【设计模式与体系结构】结构型模式-享元模式

摘要: 简介 享元模式(Flyweight Pattern)是一种用于优化创建和使用对象的结构型设计模式。享元模式以共享的方式高效地支持大量细粒度的对象的重用,它的主要目的是通过共享对象来减少内存的使用和提高性能。在很多系统软件中,会创建大量相似的对象,这些对象可能只有部分属性不同,享元模式就是为了处理这种 阅读全文

posted @ 2025-01-21 21:19 RomanLin 阅读(45) 评论(0) 推荐(0)

2025年1月20日

【设计模式与体系结构】结构型模式-适配器模式

摘要: 引言 张三从国内带了个家用电器(220V)去到美国,但是插上电以后却发现电器不能正常工作。经过了解,原来美国的标准电压是120V,而国内是220V。于是张三恍然大悟:原来是电压不适配导致的机器无法正常工作。张三找人要来了变压器,于是解决了这个问题。 这里所说的“变压器”,就相当于编程时的适配器。为了 阅读全文

posted @ 2025-01-20 19:36 RomanLin 阅读(40) 评论(0) 推荐(0)

【Floyd】AtCoder ABC375 F. Road Blocked

摘要: 前言 Floyd 算法(弗洛伊德算法)是解决图论中全源最短路径问题的一种经典算法。全源最短路径问题是指对于给定的一个带权有向图(也可以是无向图,将无向图看作双向有向图即可),求出每一对顶点之间的最短路径长度。Floyd 算法是动态规划思想的一个典型应用,动态规划的过程是引入一个中转节点来松弛路径。 阅读全文

posted @ 2025-01-20 19:28 RomanLin 阅读(66) 评论(0) 推荐(0)

2025年1月18日

【离线+单调栈】AtCoder ABC379 F. Buildings 2

摘要: 题目 https://atcoder.jp/contests/abc379/tasks/abc379_f 题意 第一行输入两个正整数 \(n, q(2 \leq n \leq 2 \times 10^5, 1 \leq q \leq 2 \times 10^5)\); 第二行输入长度为 \(n\) 阅读全文

posted @ 2025-01-18 17:40 RomanLin 阅读(69) 评论(0) 推荐(0)

【设计模式与体系结构】结构型模式-装饰模式

摘要: 简介 装饰模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。装饰模式是用组合的方式将装饰对象和被装饰对象组合在一起,当调用装饰后的对象的方法时,实际是先执行装 阅读全文

posted @ 2025-01-18 17:39 RomanLin 阅读(46) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 7 8 9 10 下一页
 
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3