- 博客(30)
- 收藏
- 关注
原创 数据结构-树状数组
树状数组是一种类似于前缀和的数据结构,但是前缀和的修改操作是 O(n)的,查询是 O(1) 的。所以就有了树状数组这个数据结构,它的两种操作被中和了,都是 O(logn) 的。
2024-04-12 23:01:32
279
原创 数据结构-并查集
并查集(Disjoint-Set)是一种可以动态维护若干个不重叠的集合,并支持合并与查询的数据结构。merge操作把两个集合合并成一个大集合。get操作查询一个元素属于哪一个集合。
2024-04-12 22:51:31
541
原创 C++:STL------unordered_map
include <unordered_map> //头文件注:pair<>: C++内置的二元组,尖括号分别指定二元组的第一元、第二元的类型。可以用make_pair函数创建二元组,用成员变量first访问第一元、second访问第二元。在比较大小时,以第一元为第一关键字、第二元为第二关键字。
2024-02-10 01:51:41
370
原创 C++:STL------map
map容器是一个键值对 key-value 的映射。其内部实现是一棵以 key 为关键码的红黑树。map的 key 和 value 可以是任意类型,其中 key 必须定义“小于号”运算符。在很多时候, map容器被当作Hash表使用,建立从复杂信息 key (如字符串)到简单信息 value (如一定范围内的整数)的映射。因为map基于平衡树实现,所以它的大部分操作的时间复杂度都在 O(logn) 级别,略慢于使用Hash函数实现的传统Hash表。
2024-02-09 01:07:57
383
原创 C++:STL------bitset
bitset可看作一个多位二进制数,每8位占用1个字节,相当于采用了状态压缩的二进制数组,并支持基本的位运算。在估算程序运行的时间时,一般以32位整数的运算次数为基准,因此n位 bitset 执行一次位运算的复杂度可视为n/32,效率较高。
2024-02-08 01:32:05
345
原创 C++:STL------set
头文件set主要包括set和multiset两个容器,分别是“有序集合”和“有序多重集”,即前者的元素不能重复,而后者可以包含若干个相等的元素。set和multiset的内部实现是一颗红黑树(平衡树的一种),它们支持的函数基本相同。
2024-02-07 01:07:51
303
1
原创 C++:STL------stack
stack 容器适配器中的数据是以 LIFO 的方式组织的,即先进后出,当想访问栈内某一元素时,必须将其顶部的元素都弹出出栈后,才能访问该元素。
2024-02-06 01:38:57
379
原创 C++:STL------deque
双端队列deque是一个支持在两端高效插入或删除元素的连续线性存储空间。它就像是vector和queue的结合。与vector相比,deque在头部增删元素仅需要 O(1);与queue相比,deque像数组一样支持随机访问。
2024-02-05 01:35:33
292
1
原创 C++:STL------vector
vector可理解为变长数组,内部实现基于倍增思想。vector支持随机访问,即对于任意的下标0<=i<n,可以像数组一样用 [i] 取值。
2024-02-03 16:13:44
447
1
原创 编译原理实验:DFA(确定的有穷自动机)的化简
令包含s0的状态组的代表是M’的开始状态,并令M’的接受状态是那些属于F的状态所在组的代表。注意,I-final的每个组或者仅含F中的状态,或者不含F中的状态。根据accept的值为0还是1进行初次划分I,将accept为0的所有结点构建成一个链表,将accept为1的所有结点构建一个链表。每一个正规集都可以由一个状态数最少的DFA所识别,这个DFA是唯一的(不考虑同构的情况)。通过设计、编写和调试将确定的有穷自动机的状态数变为最少的C程序,使得学生掌握化简为有穷自动机的过程中的相关概念和方法。
2024-02-02 21:54:56
712
原创 编译原理实验:DFA模拟程序
通过实验教学,加深学生对所学的关于编译的理论知识的理解,增强学生对所学知识的综合应用能力,并通过实践达到对所学的知识进行验证。通过对DFA模拟程序实验,使学生掌握词法分析的实现技术,及具体实现方法。通过本实验加深对词法分析程序的功能及实现方法的理解。3、利用有穷确定自动机M=(K,Σ,f, S,Z)行为模拟程序算法,来对于任意给定的串,若属于该语言时,该过程经有限次计算后就会停止并回答“是”,若不属于,要么能停止并回答“不是”。供Windows系统的PC机,可用C++/C#/Java等编程工具编写。
2024-02-02 21:50:39
503
原创 Python项目:Learning Log
导入模块models,创建模型。模型告诉Django如何处理应用程序中存储的数据。在代码层面,模型就是一个类,包含属性和方法。Topic类,继承Model,即Django中定义了模型基本功能的类。 其中有两个属性 属性text是一个CharField——由字符组成的数据,即文本。存储少量文本,如名称、标题或城市时,可使用。 定义CharField属性时,必须告诉Django在数据库中预留多少空间,使用max_length。
2024-01-10 19:23:53
537
1
原创 植物百科数据的管理与分析(C语言)
基于给定的植物百科数据,实现植物数据的管理与分析。植物相关数据存储在8个文本文件中,相应的文件信息说明如表1所示。其中,各个文件中不同的数据项之间均使用“#”分隔,如文件plant.txt中每一植物的植物名称、学名、分布地、详情描述之间使用“#”分隔,而分布地可能包括多个省份,各省份之间使用“@”分隔。图1给出了文件plant.txt中植物“独叶草”对应的数据示例。“植物百科数据的管理与分析”实践项目由植物基本信息管理模块、植物分布地分析模块和植物从属关系检索模块三个子模块组成。
2023-12-30 23:43:13
1952
1
原创 Python项目:利用爬虫爬取TFTS1-S10各费卡数据,用excel统计,并进行数据可视化
将爬取的图片大小都调整为[120,120],并去除图片名字中的后缀,名字全部转换为小写。注意特判'vi','viktor','viego','sivir','anivia'。打印未出现在爬取字典中的名字,并用其英文名计入excel中英文名。利用flourish进行数据可视化,导入excel文件,加载图片。注意字符集utf-8,将文件都以utf-8进行编码和解码。S10出现的akali名字中包含'\',需要进行特判。根据图片的名字统计各个赛季出现次数,并进行累加。爬取数据,set1代表赛季一次类推。
2023-12-24 17:31:19
460
1
原创 Python程序:电话号码和E-mail地址提取
从剪贴板取得文本,找出文本中所有的电话号码和E-mail地址,将它们粘贴到剪切板。pyperclip模块有向剪贴板发送文本或接受文本的函数。re模块中有正则表达式的函数。
2023-12-16 22:56:45
337
1
原创 Python小程序:猜数字,石头(rock)、剪刀(scissors)、布(paper),Zigzag,Conway的生命游戏,Pig Latin
Python小程序:猜数字,石头(rock)、剪刀(scissors)、布(paper),Zigzag,Conway的生命游戏
2023-12-08 18:53:36
187
原创 数据可视化 Python Matplotlib Plotly
cmp -- 比较的函数,这个具有两个参数,参数的值都是从可迭代对象中取出,此函数必须遵守的规则为,大于则返回1,小于则返回-1,等于则返回0。key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。在Plotly中,将鼠标指向条形将显示其表示的信息,通常称为工具提示。list 的 sort 方法返回的是对已经存在的列表进行操作,无返回值,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。
2023-11-29 19:36:04
999
1
原创 Pygame游戏 Alien Invasion
pygame官方地址:pygame newspygame安装方法(终端运行):$ python -m pip install --user pygame2.命名 辅助方法的名称以单个下划线打头。首字母大写的名称指的是类。包含游戏所用的图片。包含AlienInvasion类,负责管理游戏资源和行为的类。创建一系列贯穿整个游戏都要用到的属性。要玩游戏,只需运行该文件。包含Bullet类,负责管理飞船所发射的子弹。包含GameStats类,负责跟踪游戏的统计信息。包含Setting类,负责存储游戏中所
2023-11-06 22:41:54
79
原创 VS2022配置汇编以及常用知识(x86处理器)
1.打开VS20222.创建新项目3. Windows桌面向导4.创建5.勾选空项目,确定6.生成依赖项,生成自定义7.勾选masm,确定8.如图修改9.添加,新建项10. .cpp后缀改为.asm11.代码12.设置断点,调试运行13.打开寄存器。
2023-04-25 17:01:07
4752
2
原创 Icarus Verilog安装&&计组实验ALU(32位算术逻辑运算器)
Icarus Verilog安装&&计组实验ALU(32位算术逻辑运算器)
2023-02-10 15:18:18
1029
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人