Quick Start
新建博文命令
1hexo new 这是一篇新的博文
More info: Writing
新建标签页命令
1hexo new page 新建的标签页
More info: Writing
本地预览
1hexo cl && hexo s
More info: Server
推送更新上线
1hexo cl && hexo g && hexo d
More info: Generating
More info: Deployment
指导文档 文档
数据库设计的六个阶段
需求分析阶段:
自顶向下的了解与分析用户的应用需求
(结合数据字典等工具)
概念结构设计阶段: 形成概念模型
(如E-R 模型)
逻辑结构设计阶段:
将概念结构转换为数据模型
(如关系模式)
物理结构设计阶段:
确定存储结构和存取方法 (如索引,
聚簇)
数据库实施阶段: 数据载入, 应用调试, 试运行
数据库运行与维护阶段
概念结构设计阶段合成 ER
模型的可能冲突
在把小的 ER 图合并成为一个大的 ER 图的时候以下冲突可能会发生
属性冲突: 属性域冲突(属性的类型,
取值范围, 取值集合冲突), 取值单位冲突
属性的域在几个 ER 图不同, 对同一个属性来说,
在有的图取值范围是(1~10), 有的图是 (1~100)
属性的单位不同, 对同一个属性来说,
在有的图中取值单位是 cm, 有的图是 m
命名冲突: 同名异义, 异名同义
同一个名字, 但在不同图中的含义不同
不同的名字, 但在不同图中的含义相同
结构冲突: 抽象不同, 属性个数次序不同,
联系的类型不同
比如在一张图中, 小明 (老王, 学生编号, 年龄) ,
老王是作为班 ...
CO - Computer Organization
Unread布尔代数 0 & 1
普通的数学代数计算无非就是 数字集合加上一套运算规则,
相似的, 布尔代数也一样, 只不过: 数字集合变成了 {0, 1},
运算规则也只有三个加法 +, 乘法 ⋅, 补 ˉ
规则如下:
x
y
x + y
x • y
0
0
0
0
0
1
1
0
1
0
1
0
1
1
1
1
补运算:
加法
布尔加法和普通加法的区别是 1 + 1 = 1
乘法
布尔乘法和普通乘法运算结果一样
补
取反
翻译
优先级是: 补 > 乘 > 加,括号可以强制改变顺序
+
∨
或
•
∧
与
ˉ
¬
非
布尔函数
变量就是”一个不知道是 0 还是 1 的值”, 通常写成 x, y,
z
含变量的表达式叫布尔函数,比如:
真值表 - 把所有情况列出来
变量的值不知道,函数值就算不出来。解决办法是把每一种取值都试一遍,列成表格,这就是真值表。
每个变量有 2 种取值,所以 n 个变量共有 2^n 种组合,真值表就有 2^n 行
以上面这个函数为例:
0
1
0
1
1
0
1
1
...
CO - Computer Organization
UnreadFinal Tips 最终提示
Some students may question the motivation of this course, especially
in the age of AI.
有些学生可能会质疑这门课的动机,尤其是在人工智能时代。
By taking this course, students will have 通过选修这门课,学生将
a better understanding on the tools; 对工具有更好的理解;
a solid foundation for Operating Systems, Compiler Construction,
Distributed Systems, and many other related courses;
为操作系统、编译器构造、分布式系统以及许多其他相关课程打下坚实基础;
a chance to design hardware; and 有机会设计硬件;以及
a basic background for GPU and AI infrastructure.
为GPU和AI基础设施打下基础
推荐游 ...
DAS - Data Structures and Algorithm Analysis
UnreadDAS - Data Structures and Algorithm Analysis
Unread递归的概念
递归是一种在计算机科学中非常重要的编程技术(思想),
它可以简化许多的问题
递归函数具体是指函数在定义的时候直接或者间接的调用自身的方式
举一个简单的递归程序 12345678910#include <iostream>using namespace std;int main(){ cout << "zz" << endl; main(); // 在 main 函数的里面又调用了 main 函数, 这就是递归 return 0;}
(这个例子只是为了展示递归的思想, 不是为了解决真实的问题,
如果实际运行这个代码那么他会陷入死循环)
递归的概念
递归可以把一个大型的复杂的问题, 转化为一个与原问题相似,
但是规模较小的问题来求解. 直到子问题不能再被拆分, 可以直接求解,
递归就结束了. 递归的思考范式就是把大事化小的过程
递归中的递就是递推的意思,
归就是回归的意思, 接下来我们将慢慢体会
!–递归的必要条件–!
在书写递归的时候, 有两个必要条件:
退出: 递归存在限制条件, 当满足这个限制条件的时候,
递归💩不再继续
渐进: ...
DAS - Data Structures and Algorithm Analysis
UnreadTeaching Staff
Instructor: Xiao DONG
Office: T6-403-R2
Email: xiaodong@bnbu.edu.cn
TA: Cici Chong CHEN
Office: T3-602-R25
Email: chongchen@bnbu.edu.cn
TA: Dayu GUO
Office: TBD
Email: guodayu@bnbu.edu.cn
在 BNBU 的教学中 DSA, 数据结构与算法是在大二上学期所学习的一门课程,
他使用 JAVA 进行教学…(真是纳了闷了)
在我的博客中会使用 c++进行所有代码的实现, 在最后辅以 java
的提供(其实并没有什么关系呢, 只是不用c++ 的话看着就很变扭)
.video-container {
position: relative;
width: 100%;
padding-top: 56.25%; /* 16:9 aspect ratio (height/width = 9/16 * 100%) */
}
.video-container iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
枚举顾名思义就是把所有情况全都罗列出来, 然后找出符合题目要求的那一个.
因此枚举是一种纯暴力的算法. 一般情况下枚举策略都是会超时的.
此时要先根据题目的数据范围来判断暴力枚举是否可以通过. 如果不行的话,
就要用后面要学的各种算法来进行优化(比如二分, 双指针, 前缀和,
差分等等).
使用枚举策略时, 重点思考枚举对象(枚举什么), 枚举顺序(正序还是逆序),
以及枚举的方式(普通枚举, 递归枚举, 二进制枚举)
铺地毯
https://www.luogu.com.cn/prob ...
.video-container {
position: relative;
width: 100%;
padding-top: 56.25%; /* 16:9 aspect ratio (height/width = 9/16 * 100%) */
}
.video-container iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
高精度加法
当数据的值特别大, 各种类型都存不下的时候,
此时就要用高精度算法来计算加减乘除:
先用字符串读入这个数, 然后用数组逆序存储该数的每一位
利用数组, 模拟加减乘除运算过程
高精度算法本质上还是模拟算法,
用代码模拟小学列竖式计算加减乘除的过程.
https://www.luogu.com.cn/problem/P1601
参考模板
1234567891011121314151617181920212223242526272829303132333435363 ...
模拟, 顾名思义, 就是题目让你做什么你就做什么,
它考察的是将思路转换为代码的代码能力,
这类题目一般较为简单, 是比赛里面的签到题
模拟 - 多项式输出
https://www.luogu.com.cn/problem/P1067
这个题讲了一大堆构成多项式的条件,
经过仔细的分析再一一对应的去模拟就行了
.video-container {
position: relative;
width: 100%;
padding-top: 56.25%; /* 16:9 aspect ratio (height/width = 9/16 * 100%) */
}
.video-container iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
参考题解
123456789101112131415161718192021222324252627282930313233#include <iostream& ...















