logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【贪心算法】专题(六):降维打击与错位重构的终极收官

本文探讨了四种高级贪心算法策略,通过降维、反向排除和错位插空等技巧解决复杂问题。首先在俄罗斯套娃信封问题中,通过巧妙排序将二维问题降为一维LIS问题;其次在可被三整除的最大和问题中,采用反向排除法根据余数选择最优解;最后在条形码和字符串重构问题中,利用错位插空法确保相邻元素不同。这些策略展示了贪心算法在复杂场景下的灵活运用,能有效提升解题效率。

文章图片
#贪心算法#重构#算法 +4
【动态规划篇】专题(四):状态机模型——股票交易的艺术

本文介绍了股票买卖问题中的状态机模型解法,通过分析不同交易限制条件下的状态转移关系来求解最大利润。主要涵盖三种典型问题:含冷冻期、含手续费和最多两笔交易的情况。对于含冷冻期问题,定义了持有股票、可交易和冷冻期三个状态;含手续费问题简化为持有和空仓两种状态;最多两笔交易问题则引入交易次数作为新维度。每种情况都给出了清晰的状态转移图和对应的动态规划实现代码,展示了如何将复杂交易规则转化为状态转移方程,

文章图片
#动态规划#算法#c++ +4
【动态规划篇】专题(二):路径问题——在网格图中的决策艺术

摘要 本文系统讲解网格图动态规划模型,从一维跳台阶问题扩展到二维网格路径问题。核心内容包括: 基础套路:定义dp[i][j]表示到达(i,j)的状态值,通过多开一行一列处理边界条件。 经典题型: 不同路径:计算无障碍网格从左上到右下的路径总数 带障碍路径:遇到障碍物时路径数为0 礼物最大值:取上方或左方的最大值加上当前值 实现技巧:虚拟边框初始化(如dp[0][1]=1),统一处理边界情况,避免复

文章图片
#动态规划#算法#c++ +2
【Linux】Reactor 反应堆模式:高性能服务器的工程级架构

本文介绍了Reactor反应堆模式作为高性能服务器架构的核心设计思想。Reactor通过事件驱动和回调机制,将epoll的事件通知能力封装成优雅的框架,解决了直接使用epoll时面临的逻辑混乱、状态管理困难等问题。文章详细解析了Reactor的核心组件:Connection类对TCP连接进行完整抽象,包含文件描述符、缓冲区、回调函数等关键信息;事件循环通过epoll_wait被动等待事件,并自动调

文章图片
#服务器#linux#架构 +1
【Linux】epoll 深度剖析:高性能 IO 多路复用的终极方案

本文深入剖析Linux高性能IO多路复用机制epoll。首先介绍epoll的三个核心系统调用:epoll_create创建监控实例、epoll_ctl管理监控事件、epoll_wait获取就绪事件。重点解析epoll的高效原理:通过红黑树管理监控fd,就绪队列存放活跃fd,回调机制避免轮询开销。文章详细对比了LT(水平触发)和ET(边缘触发)两种工作模式的特点及使用场景,并强调ET模式必须配合非阻

文章图片
#linux#运维#服务器 +1
【Linux】网络进阶:内网穿透、DNS与ICMP实战

本文介绍了内网穿透、DNS与ICMP三大网络实战技术。首先详细讲解内网穿透原理,通过frp工具实现SSH和Web服务穿透NAT的完整部署流程;其次解析DNS域名系统工作原理,演示dig工具的使用方法;最后剖析ICMP协议,说明ping和traceroute的网络诊断机制。文章包含大量实战内容,如frp配置教程、DNS查询过程解析,以及"浏览器输入URL后发生什么"的经典面试题解

文章图片
#linux#网络#运维 +1
【Linux】HTTP协议深度解析(二):方法、状态码与Header详解

本文深入解析HTTP协议核心内容,包括方法、状态码和Header。重点对比了GET和POST方法:GET参数在URL中,长度受限但可缓存;POST参数在Body中,适合提交大量数据。其他方法如HEAD(获取响应头)、PUT(更新资源)、DELETE(删除资源)和OPTIONS(查询支持方法)也有详细说明。文章还涉及HTTP状态码分类(如200成功、404未找到)及常见Header字段的作用。通过实

文章图片
#linux#http#运维 +4
【Linux】HTTP协议深度解析(三):完整HTTP服务器实现

本文详细介绍了HTTP服务器的实现过程,从理论基础到实践落地。主要内容包括:1)Web根目录的概念与路径映射规则,强调安全性防范路径穿越攻击;2)文件读取与MIME类型判断,提供代码实现示例;3)HTTP请求解析的结构体定义。通过循序渐进的方式,从静态资源服务到动态请求处理,构建了一个完整的HTTP服务器实现方案,帮助开发者深入掌握HTTP协议核心原理与实现细节。文章包含大量代码示例和关键点说明,

文章图片
#服务器#linux#http +4
【Linux】UDP Socket编程实战(三):多线程聊天室与线程安全

本文介绍了基于UDP协议的多线程聊天室实现方法,重点讲解了从单播到多播的演进过程。主要内容包括:1) 通过在线用户列表实现消息路由转发;2) 使用互斥锁保证多线程访问用户列表的安全性;3) 采用线程池提高并发处理能力;4) 设计了"[IP:Port]#内容"的消息格式。文章还详细分析了UDP全双工特性、RAII锁封装、线程安全实践等关键技术点,展示了网络服务从单线程到多线程的进

文章图片
#linux#udp#安全 +3
【Linux】线程同步与互斥(二):条件变量与线程同步

本文介绍了Linux线程同步中的条件变量机制,重点解析了同步与互斥的区别、条件变量的必要性及其实现原理。互斥解决资源访问冲突,而同步解决线程协作问题。条件变量避免了轮询检查的低效问题,允许线程在条件不满足时休眠等待。文章详细讲解了pthread_cond_wait的工作原理,指出其必须配合互斥锁使用的原因,并通过生产者-消费者模型演示了条件变量的正确用法。最后强调条件变量使用中的常见陷阱,如虚假唤

文章图片
#linux#运维#服务器 +1
    共 13 条
  • 1
  • 2
  • 请选择