About me
ResumeContests
CSP2019(S): First Prize (2019.11)
ICPC2022 Nanjing Regional Contest: Silver Medal (2023.1)
CSP31: Top 0.33% (2023.9)
CSP34: Top 1% (2024.5)
iGEM (as a member of NJU-China Dry Lab): Winner of Best Software & AI Project (2024.10)
CCSP2024: Gold Medal (Rank 12) (2024.10)
Courses (Extracted)
Teaching Assistant of 信息与计算科学导论实验 (2023 Fall).
I’ve designed some unconventional programming problems for beginners, contact me if interested.
GPA (First 2.5 years): 4.64/5.00
离散数学(强基, ...
形式语言与自动机_实验报告
项目地址
实验完成度
完成了 PDA 和 TM 的解析器、模拟器
按手册要求完成了 TM 的 verbose 模式
完成了 PDA 的 verbose 模式,对非法输入的处理同 TM,对正常的模拟输出格式如下:123456789101112131415161718192021iad@LAPTOP-H96V848V:~/fla$ ./bin/fla -v ./pda/anbn.pda abInput: ab==================== RUN ====================State: q0Input: [a]bStack: z---------------------------------------------State: q1Input: a[b]Stack: 1 z---------------------------------------------State: q2Input: ab[]Stack: z---------------------------------------------State: acceptInput: ab[]Stack: ...
编译原理_期末复习
第三章 词法分析
词法分析的作用
词法单元的规约(正则表达式)
词法单元的识别(状态转换图/有穷自动机)
词法分析器生成工具及设计
词素/词法单元的区别:词素是输入的东西,词法单元是匹配出来的东西模式:词法单元对应的词素可能具有的形式正则表达式:Regular Expression;优先级:* > 连接符 > |
状态转换图、NFA、DFA:NFA拼接、RE转NFA、NFA转DFA、DFA最简化:见 FLA
第四章 语法分析概念
句型/句子:句子不包含非终结符
语言:所有可接受的(推导出来的)句子的集合
消除二义性
此处不考;优先级上升算法处考
消除左递归
立即左递归的消除:$$A\to A\alpha_1|A\alpha_2|\cdots|A\alpha_n|\beta_1|\beta_2|\cdots|\beta_m$$改写为:$$A\to \beta_1A’|\beta_2A’|\cdots|\beta_mA’$$ $$A’\to \alpha_1A’|\alpha_2A’|\cdots|\alpha_nA’|\varepsi ...
计算机网络_期末复习
Chapter 4 - 网络层:数据平面IPV4与无类别域间路由选择(CIDR)IPV4:
$32$ 位,$X.X.X.X/Y$ 代表前 $Y$ 位掩码的子网。
路由器的每个端口作为子网的边界
广播地址:255.255.255.255 & 子网掩码,用于全子网广播
标识地址:子网内IP | 子网掩码,用户子网对外标识
因此,$/Y$ 的子网可用 IP 数为 $2^Y - 2$
路由器与路由表
路由器
在输入和输出端口处均会发生拥塞
处理拥塞的调度算法:
先进先出
优先权排队
加权公平排队(带权的 Round Robin 轮盘赌)
MTU:最大传送单元;超过 MTU 大小的数据报需要分片
分片:切分大数据报的载荷,分成多个小数据报
额外设置一个标志位代表是否是最后一片
路由器每个 WAN 口都有一个独立的 IP 和一个独立的 MAC
路由表
跳转算法采用最长前缀匹配算法
路由器通过 OSPF、BGP 等协议填写路由表
路由表的例子:假设我们有一个网络设备(如路由器),它连接到以下网络:
本地网络 A: 192.168.1.0/24 ...
编译原理_实验报告
项目地址
Lab 1编译方法在 Code 文件夹下输入命令 make 即可自动编译生成 parser 文件。
功能简介文件结构如下所示:
123456Code├── Makefile├── lexical.l├── syntax.y├── syntaxtree.c└── syntaxtree.h
其中 lexical.h 存放与词法分析相关的 flex 代码;syntax.y 存放与语法分析相关的 bison 代码和 main 函数;syntaxtree.h 和 syntaxtree.c 用于存放与语法树相关的结构体定义和函数。
词法分析对于ID、INT和FLOAT,我使用了这样的正则表达式:
123INT 0|([1-9][0-9]*)FLOAT {INT}+"."{DIGIT}+ID (_|{LETTER})(_|{LETTER}|{DIGIT})*
在分析时需要注意优先级,例如先匹配 /*、最后匹配ID等。
在匹配到 /* 时,我将不断向后读取内容直到遇到第一个 ...
CS149_Lab1
Prog1我使用 WSL 进行评测,开放给 WSL 使用的有 8 个 i7-13700H,每个CPU有 4 个核心。
宏观性能度量将图像简单切割进行分配,得到度量如下:
nThreads
v1-Speedup
v2-Speedup
1
0.99x
0.99x
2
2.01x
1.70x
3
1.65x
2.19x
4
2.48x
2.56x
5
2.50x
2.89x
6
3.30x
3.31x
7
3.45x
3.81x
8
4.08x
4.11x
9
4.34x
4.52x
10
5.02x
4.74x
图片如下所示。在 nThreads=3 时明显会产生负载不均衡,负责处理中间图像的线程任务过重。
因此考虑将图像按每 $10$ 行拆分轮流交给每个线程负责。度量出的数据如下:
nThreads
v1-Speedup
v2-Speedup
1
1.01x
1.00x
2
1.99x
1.99x
3
3.05x
3.00x
4
3.96x
3.86x
5
4.89x
4.59x
6
5.87x
5.4 ...
6.824_Lab1
实验描述链接:http://nil.csail.mit.edu/6.824/2021/labs/lab-mr.html
任务:使用 Golang 实现 MapReduce 框架。
实验结果与感想实验结果:本地运行 ./mr-test-many.sh 50 测试通过。
框架和算法不难,主要是熟悉 Go 的基础语法。在这里简述一下我对 Go 的优点和缺点的认识:
具有原生的管道(channel)和协程(goroutine),对于多线程程序非常友好;在一定程度上鼓励了多线程和异步编程,甚至可以将一些经典的算法完全改为多线程版本(如遍历二叉树时,在每一个节点处开一个协程)
对 RPC 的支持非常到位,很容易进行协程间的通信和调用
运行时自带 sanitizer(race检测器)
面向对象采用了 interface 的设计,使代码统一性较高(-> 和 .);但是个人不喜欢,会使得我的代码出现混乱(拷贝和引用的 implicit 推导在 python 中我就尤为反感)
异常处理采用了C的风格,使用返回值表达;但是返回值表达不够清晰:err 是隐式强制传递的,在类型的判别上容易造成混乱;_ ...
乱转指南_安徽方向
合肥(双层)蚌埠(经凤阳、明光)来安、南京0739_南京南【G1887】合肥_08300843_合肥【K8418】蚌埠_10431110_蚌埠长途汽车中心站【凤阳城际公交CJ399路】凤阳汽车站_1150 (0552-3011179)1200_科技学院南门【凤阳8路/102路/4路】客运西站_12301240_凤阳西站【大巴】明光汽车站_13501400_明光汽车站【明光D01路】自来桥_15151520_自来桥【来安B01路】蓝天白云宾馆_16201620_蓝天白云宾馆【步行1km】紫金城南_16301640_紫金城南【来安D04B路(施磁)】青龙岔路_17301730_青龙岔路【步行4.3km】金磁家园西_18301830_金磁家园西【446路】竹镇政府_18451855_竹镇政府【632路】龙池地铁站_20002015_龙池地铁站【520路】晓庄地铁站_2050
来安时刻表:https://share.laianbbs.com/v2_1/wap/share-thread?tid=1531427
扬州(经永亭线)合肥北城、肥东、南京8:50 南京 C424 扬州 ...
乱转指南_浙江方向
苏州(经七都)湖州、德清、杭州(经千金新市/湖州德清/乾元塘栖)【南京出发】0659_仙林【G7037】苏州园区_08270845_苏州园区火车站【3号线】宝带路_09150920_宝带路【4号线】红庄_09250935_红庄【4号线支线】天鹅荡路_09500950_天鹅荡路【步行1km】永旺梦乐城西_1005【93路0930/0955发车】1015/1040_永旺梦乐城西【93路】奥林清华公交枢纽站_1035/1100【上海出发】0755_虹桥火车站【上海17】东方绿舟_08350840_东方绿舟【示范区1】汾湖汽车客运站_09200930_临沪客运站南【吴江临沪专线】4号线同里(甘泉东路)站_10501100_同里【苏州4】松陵大道_1110
【千金、新市方案】1115_4号线松陵大道站【吴江七都专线(780路)】七都公交枢纽站_12251230_七都公交枢纽站【苏州7606/湖州173】泰安路换乘中心_13201340_联通公司(同心路)/泰安路换乘中心【湖州166/174/K181】风顺路 ...
乱转指南_沪宁沿线城市
沪宁1日(跳苏常、丹镇,经武进、句容)【南京出发】 0600_南京【G7031】南翔北_0742 0755_南翔北火车站【嘉定118路】真南路众仁路_0805 0820_南翔【11号线】花桥_0905【上海出发】 0800_虹桥西交通中心【嘉虹3线】安亭地铁站_0825 0840_安亭【11号线】花桥_08550915_花桥【11号线】唯亭_10101020_唯亭【3号线】苏州园区火车站_10351107_苏州园区【G7060】无锡_11331205_无锡火车站【3号线】苏庙_12201235_新业路钱藕路【115路/206路/快2路】江南影视学院_12551255_江南影视学院【步行300m】无锡职教园_13001305_无锡职教园【26路】雪堰桥公交停车场_13501400_雪堰公交站【68路】南夏墅公交站_15101520_南夏墅【1号线】武进沿江城际_15251549_武进【G8256】句容_1611
宁沪1日(跳锡苏)6:30 经天路地铁站 606路 南门汽车客运站 8:108:15 南门汽车站客运站 633路 丹阳行政中心北 ...