「数字逻辑设计」Chapter 2. Combinational Logic Circuits

2024-03-14

本篇笔记主要介绍了组合逻辑电路的基本概念,包括逻辑运算、逻辑门的类型及其特性、布尔代数的基本法则、规范形式以及卡诺图的使用方法。此外,还探讨了电路优化的目标和方法,帮助读者理解如何在设计中实现高效的逻辑电路。(由 gpt-4o-mini 生成摘要)

2024-03-06

本篇笔记概述了二叉搜索树的基本概念及其变种,包括 AVL 树、Splay 树、红黑树和 B+ 树。首先介绍了 AVL 树的定义、插入和删除操作,以及如何维护树的平衡。接着讨论了 Splay 树的旋转操作和均摊分析,随后介绍了红黑树的插入和删除策略,最后讲解了 B+ 树的结构特性及其分裂和插入过程。整体上,笔记提供了对这些数据结构的深入理解和操作方法。(由 gpt-4o-mini 生成摘要)

2024-02-29

本篇笔记概述了数字系统和信息的基本概念,包括数字电路、数字信号与模拟信号的区别,逻辑系统的分类(组合电路与时序电路),以及数字计算机和嵌入式系统的结构与设计过程。此外,还介绍了数字系统中的进制、编码方式(如 BCD 码、格雷码和奇偶校验码)等内容,帮助读者理解数字逻辑设计的基础知识。(由 gpt-4o-mini 生成摘要)

2024-01-10

1. Ch13 Exception Handling and Text IO

1.1. Exceptions

  • 异常(exception)  是程序运行时发生的错误事件,可能导致程序无法正常运行。
  • 常见的异常:
    • ArithmeticException:除零错误。
    • InputMismatchException:输入数据类型不匹配。
    • NullPointerException:访问未初始化的对象。
  • 异常分类
    • 上半部分的 Exception 是程序级错误,可以捕获并处理。
      • 运行时异常(RuntimeException)通常由逻辑错误引发,属于 非检查型异常(unchecked exception)
        • 不需要强制捕获,通常由逻辑错误引发。
      • 非运行时异常(如  IOException 等)需要显式处理,属于 检查型异常(checked exception)
        • 编译器强制程序员检查并处理,即程序员应该使用使用 try-catch 块进行捕获这些异常并进行操作。

2023-11-08

维护一棵点有颜色的树,一开始只有编号为 11 的节点,其颜色为 CC,要求支持以下操作 qq 次:

  1. 给定 x,c,dx,c,d,添加一个编号为 n+1n+1 颜色为 cc 的节点,向点 xx 连一条长度为 dd 的边
  2. 给定 x,cx,c,将点 xx 的颜色变成 cc

每次操作后,你都需要在树上选两个颜色不同的点并最大化它们之间最短简单路径的长度,并输出。

1q5×1051\le q\le 5 \times 10^5

2023-11-06

大一新生的第一次 ICPC 区域赛。

选赛站的时候还不懂得避锋芒的道理,来了才发现这一站高手云集。故而赛前已经将期望拉到最低——稳住金牌就好。

比赛过程虽然有不少遗憾,但结果竟出乎意料地不错,对于我们这支新生队伍来说,算是一个比较“华丽”的开局了(此处对应比赛 K 题名称——“华丽收场”)。

2021-01-21

定义一个排列 PP 上的操作 (t,S)(t,S) 为:

  1. 有两个空序列 AABB
  2. 枚举 Si=1S_i=1 的每个 ii:如果 PiP_i 是偶数,则将其放到 AA 的末尾;否则放到 BB 的末尾;
  3. 如果 t=0t=0 则令 C=ABC=\overline{AB},否则令 C=BAC=\overline{BA}
  4. 枚举 Si=1S_i=1 的每个 ii:将 PiP_i 替换为 CC 的开头元素,删去 CC 的开头元素。

现给定排列 PP,要求使用至多 3030 次如上操作,使 PP 从小到大排序,注意你不需要最小化操作次数。

1n150001\le n\le 15000