摘要:
本文介绍了使用数组和链表两种方式实现二叉树,包括初始化、节点操作(如获取、添加、删除)、以及遍历方法(前序、中序、后序、层次遍历)。测试代码已上传至代码库。 阅读全文
摘要:
文章介绍了二叉树、N叉树及其性质,包括满二叉树、完全二叉树、二叉搜索树、平衡二叉树等,并讨论了它们的存储结构,包括顺序存储和链式存储,链式存储更适合大多数树。 阅读全文
摘要:
树是分支分层的数据结构,包含根节点、子节点等术语,有深度、高度等属性。二叉树是树的一种,节点最多有两个子节点,有前序、中序、后序和层次遍历方式。 阅读全文
摘要:
队列是先进先出数据结构,分顺序和链式队列。顺序队列容量固定,易浪费空间;链式队列无限扩容,高内存利用率。队列按功能特性分多种,如阻塞、优先、延迟、循环和双端队列,不同场景有独特效果。 阅读全文
摘要:
栈是一种特殊线性数据结构,操作遵循后进先出原则,可解决表达式求值等问题。栈分为顺序栈和链栈,各有特点。文章详细介绍了栈的定义、分类及实现方式,包括顺序栈和链栈的ADT定义及基本操作实现。 阅读全文
摘要:
本文介绍了链表的基本概念、节点和头指针的定义,链表的分类及实现方式。通过自申请内存空间和维护,实现了单链表的操作,包括初始化、插入、查找、更新、移除和销毁等操作,并提供了代码示例。 阅读全文
摘要:
Serilog日志记录器使用简便,但需注意接收器资源管理和异常处理。全局Log类简化配置,而ForContext()增强日志功能。异常时Serilog捕获并写入SelfLog,接收器使用PeriodicBatchingSink架构缓存日志事件,失败时重试,保护系统稳定。 阅读全文
摘要:
分享删除字符串最后一个字符的多种实现方法,包括字符串、StringBuilder、Array、Linq等方式,并进行性能测试。结果显示字符串方式性能最优,但了解多种方法有助于选择最合适的方法。 阅读全文
摘要:
Serilog支持通过App.config和Web.config中的 阅读全文
摘要:
Serilog支持多种接收器用于日志存储,增强器用于添加属性,LogContext管理动态属性,支持多种输出格式包括纯文本、JSON及ExpressionTemplate。还提供了自定义格式化选项,适用于不同需求。 阅读全文