算法-分治 23. 合并 K 个升序链表
[LeetCode-23. 合并 K 个升序链表](https://leetcode.cn/problems/merge-k-sorted-lists/description/?envType=study-plan-v2&envId=top-interview-150 "LeetCode-23. 合并 K 个升序链表") 23. 合并 K 个升序链表 给你一个链表数组,每个链表都已经按
[LeetCode-23. 合并 K 个升序链表](https://leetcode.cn/problems/merge-k-sorted-lists/description/?envType=study-plan-v2&envId=top-interview-150 "LeetCode-23. 合并 K 个升序链表") 23. 合并 K 个升序链表 给你一个链表数组,每个链表都已经按
## LeetCode 104. n叉树的最大深度 > [跳转链接](https://leetcode.cn/problems/maximum-depth-of-binary-tree/description/?envType=study-plan-v2&envId=top-100-liked) 给定一个二叉树 root ,返回其最大深度。 二叉树的 最大深度 是指从根节点到最远
> 简介:本篇文章开始介绍程序架构设计中的设计模式,介绍了设计模式的基本概念以及23设计模式。主要介绍了设计模式中的六大设计原则。开闭原则,里氏代换原则,依赖倒转原则,接口隔离原则,迪米特原则和合成复用原则。这几大原则是设计模式使用的基础,在使用设计模式时,应该牢记这六大原则。 ## 设计模式介绍 - **设计模式(Design Patterns):**
乐观锁和悲观锁是计算机编程领域中用于处理并发访问数据的两种不同策略。它们的主要目标是在多个线程或进程同时访问共享数据时,保证数据的一致性和完整性,避免出现竞态条件(Race Condition)。在不同的情景下,选择合适的锁策略可以提高程序的性能和可靠性。 ### 1. 悲观锁(Pessimistic Locking): 悲观锁假定在操作数据时,会发生竞态条件,因此默认情况下将数据锁定
## 问题描述 峰值元素是指其值严格大于左右相邻值的元素。 给你一个整数数组 nums,找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回 任何一个峰值 所在位置即可。 你可以假设 `nums[-1] = nums[n] = -∞ `。 你必须实现时间复杂度为 `O(log n)` 的算法来解决此问题。 > 示例 1: 输入:nums = [1,2,3,1]