软件开发过程中,我们经常会遇到各种设计问题,例如如何管理对象之间的关系、如何优化代码的可复用性和可维护性等等。为了解决这些问题,我们可以使用设计模式。
位运算是计算机底层最基础的操作,直接操作二进制位(0 和 1)。尽管现代编程语言提供了高级抽象,但理解位运算的本质能显著提升代码效率和解决特定问题的能力。本文将深入探讨位运算的核心原理、常见技巧及其实际应用场景。
最近有一些碎片时间,利用碎片时间在力扣刷一刷算法题,碰到了一道题,算法过程的子算法需要反转部分链表,看了看题解,觉得这个链表翻转的算法很有趣,也是一种有趣的思路,记录一下。
最近看一些代码的时候,发现有人用 System.Collections.Concurrent
下的 BlockingCollection
很便利的实现了生产者 - 消费者模式,这是之前没有注意到的,之前只关注过 ConcurrentQueue<T>
、ConcurrentStack<T>
或 ConcurrentBag<T>
这些并发队列,并发堆栈,并发包相关的使用,正好好奇 BlockingCollection
的用法,本次将 System.Collections.Concurrent
下的所有用法都实践一下。