- Tag · 算法-

2020

本文全面解析了线性搜索和二分搜索两种基础且核心的搜索算法。通过伪代码、示例和 Java 代码实现,详细阐述了它们的工作原理,并对比了 $O(n)$ 与 $O(\log n)$ 的时间复杂度差异,特别探讨了二分搜索中防止整型溢出的技巧,以及在 Java 中使用标准库进行高效搜索的最佳实践。

本文深入探讨操作系统中的死锁问题。首先介绍死锁的概念及死锁产生的四个必要条件,随后详细阐述利用资源分配图进行死锁检测的方法,包括状态转移模型和简化算法。重点讲解了动态避免死锁的银行家算法及其原理。最后,提出了破坏死锁必要条件的预防策略,如解决“请求与保持”和“循环等待”的方法,为理解和解决操作系统死锁提供全面的技术指导。

2019

本文全面解析了操作系统中的进程调度策略,涵盖长期与短期调度器、抢占与非抢占式调度。深入探讨了适用于批处理任务(FIFO, SJF, SRTF)、交互式进程(RR, 多级反馈队列)以及实时系统(RM, EDF)的多种经典算法,并分析了它们在周转时间、响应时间和CPU利用率等方面的性能差异。

算法分析导论 2019-10-20

本文介绍了算法的基本概念、分类(确定性、随机、优化、并行、分布式)以及算法分析的核心指标(时间、空间、功耗等)。通过列表操作的例子,形象地解释了算法效率的差异。