- 博客(632)
- 资源 (5)
- 收藏
- 关注

原创 KMP算法的详细讲解。(适用于所有的字串查找问题。)
KMP算法是我们学习数据结构与算法非常重要的算法。KMP算法里面的代码真的简洁而又优美,学会之后你会不禁感叹算法的魅力。首先我们对KMP算法的三位创始人Knuth、Morris、Pratt致敬,我非常佩服他们的聪明才智,也庆幸可以学到这么优秀,富含丰富的思维的算法。KMP算法的作用是在一个已知字符串中查找子串的位置,也叫做串的模式匹配。比如主串s = ‘abba’,字串t = ‘ab’。我们先要找到字串t在主串s中的位置,大家觉得这可能会非常的简单。但是当数据量变得非常多的时候,比如主串是好几百个甚至好几
2022-06-01 20:03:19
440
2

原创 ❤❤快到七夕了,某小学妹找我聊天,原因竟然因为这,赶快收藏加一手关注❤❤
目录一、什么是Pandas?二、Pandas的常见数据结构三、生成对象1.Series数据2.DataFrame数据四、查看数据五、获取数据六、提取数据七、条件筛选八、处理缺失值九、Apple函数十、合并(Merge)1.结合(Concat)2.连接(join)3.追加(Append)十一、分组十二、数据透视表(Pivot Tables)十三、数据可视化十五、数据的输入与输出1.写入CSV文件2.读取CSV文件一、什么是Pandas?官方文档Pandas 是 Python (opens new win
2021-08-12 23:56:56
1347
32

原创 滑动窗口模板!(学算法必备!!!)
def findSubArray(nums): N = len(nums) # 数组/字符串长度 left, right = 0, 0 # 双指针,表示当前遍历的区间[left, right],闭区间 sums = 0 # 用于统计 子数组/子区间 是否有效,根据题目可能会改成求和/计数 res = 0 # 保存最大的满足题目要求的 子数组/子串 长度 while right < N: # 当右边的指针没有搜索到 数组/字符串 的结尾 sums
2021-02-21 10:49:40
413
5

原创 并查集的详细讲解!!!——————学算法、数据结构必备。
一、什么是并查集?并查集是一种数据结构。并查集这三个字,一个字代表一个意思。并————代表合并查————代表查找集————代表这是一个以字典为基础的数据结构,它的基本功能是合并集合中的元素,查找集合中的元素。并查集的典型应用是有关联连通分量的问题。因为并查集解决单个问题(添加,合并,查找)的时间复杂度都是O(1),因此,并查集的应用范围十分的广泛。二、并查集的代码实现1.集合树用字典存储的定义并查集使用的是字典来存储树,字典的键是子节点,值是父节点。注:与二叉树、链表不同,二叉树、链表
2021-01-17 23:27:33
530

原创 关于DFS和BFS算法——Python的代码实现和讲解。
1.什么是DFS和BFS?DFSDFS,通俗来讲,就是深度优先搜索,它可以通过栈来实现。举个例子:图中的例子以A为出发点。那么DFS的其中一个结果就是ABDFEC。简单点概括就是一条路走到黑,如果无路可走了,就会有一个回溯的过程,直到所有的节点都已经走过了。BFSBFS,通俗来讲,就是广度优先搜索,它可以通过队列来实现。也是上面的图片的例子:BFS的其中一个结果就是:ABCDEF,概括来说,就是把每个的相关点都依次的写出来。2.DFS和BFS的代码实现DFS的代码实现
2021-01-13 10:23:55
6075
8

原创 Django学习之用Django实现前后端分离开发。
前言我们开发网站时需要有前端和后端,开发方式分为前端和后端一起开发,前端后端分离开发,一般大多数采用前后端分离开发,因为这样开发的效率高且安全,Django本身就可以完成前后端分离开发,为前端提供json数据返回,但是django本身的序列化太麻烦,几乎没人用。所有Django推出了一个Django-REST-framework,它是一个建立在django基础上的框架,后续我们会介绍Django-REST-framework,它比较常用。我们现在用django实现一个简单的前后端分离开发,感受一下dja
2020-12-21 19:23:09
6202
5

原创 如何自己下载并安装PyCharm 2020.2.2 x64?
如何自己安装PyCharm 2020.2.2 x64欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体验;在创作中心设置你喜爱的代码高亮样式,Markdown
2020-09-27 14:40:18
1898
5
原创 一个进程被唤醒意味着()。————操作系统
A. 该进程可能重新占用CPU。C. 其PCB移至就绪队列首。一个进程被唤醒意味着()。B. 它的优先级变为最大。D. 进程变为运行状态。
2023-03-26 15:51:05
3
原创 计算机系统中判断是否有中断事件发生应该在()————操作系统
计算机系统中判断是否有中断事件发生应该在()D. 由用户态转入内核态时。B. 执行完一条指令后。
2023-01-31 19:43:17
89
原创 用户在程序中试图读取存放在硬盘中某文件的第2个逻辑块,使用操作系统提供的接口是()————操作系统
用户在程序中试图读取存放在硬盘中某文件的第2个逻辑块,使用操作系统提供的接口是()
2023-01-31 19:40:06
52
原创 P1464 Function————C++
对于一个递归函数wabca≤0b≤0c≤0a20b20c20w202020abbcwa−1bcwa−1b−1cwa−1bc−1−wa−1b−1c−1这是个简单的递归函数,但实现起来可能会有些问题。当abc均为15时,调用的次数将非常的多。你要想个办法才行。注意:例如w30−10又满足条件1又满足条件2,请按照最上面的条件来算,答案为1。
2023-01-29 10:04:13
181
原创 P1036 [NOIP2002 普及组] 选数————C++
个整数相加,可分别得到一系列的和。现在,要求你计算出和为素数共有多少种。NOIP 2002 普及组第二题。第一行两个空格隔开的整数。输出一个整数,表示种类数。
2023-01-17 12:04:14
313
原创 P1028 [NOIP2001 普及组] 数的计算————C++
本题数据来源是 NOIP 2001 普及组第一题,但是原题的题面描述和数据不符,故对题面进行了修改,使之符合数据。我们要求找出具有下列性质数的个数(包含输入的正整数。请你求出,一共有多少个合法的数列。不同当且仅当两数列长度不同或存在一个正整数。输出一行一个整数,表示合法的数列个数。对本题情况的反馈,原题面的问题见。输入只有一行一个整数,表示。对于全部的测试点,保证。
2023-01-17 11:35:09
290
原创 当硬件的中断装置发现有事件发生,就会中断正在占用CPU的程序执行,让操作系统的()占用CPU。————操作系统
当硬件的中断装置发现有事件发生,就会中断正在占用CPU的程序执行,让操作系统的()占用CPU。
2023-01-16 21:22:23
63
原创 假设某基准程序在一台计算机上的运行时间为100秒,其中80秒的时间是用来执行乘法操作的,如果希望该程序的速度提高到原来的4倍,乘法部件的速度应该是原来的()倍。————计算机组成原理
假设某基准程序在一台计算机上的运行时间为100秒,其中80秒的时间是用来执行乘法操作的,如果希望该程序的速度提高到原来的4倍,乘法部件的速度应该是原来的()倍。
2023-01-16 21:20:11
78
原创 P5587 打字练习————C++
秒完成了这次的打字游戏,请你计算出他的 KPM(Keys per minutes,每分钟输入的字符个数),答案四舍五入保留整数部分。特殊的,如果此时光标已经在一行的开头,则不能继续退格(即忽略此时输入的退格键)。有这样一个打字练习网站,给定一个范文和输入框,会根据你的输入计算准确率和打字速度。输入的文本有多行,R 君可以通过换行键来换行,换行后光标移动到下一行的开头。第三行的正确字符数为 1,R 君使用退格键删除了被打错的字符。R 君会依次告诉你网站的范文,他的输入和花费的时间。的数据,不存在退格键。
2023-01-16 16:31:22
656
原创 P1012 [NOIP1998 提高组] 拼数————C++
将它们联接成一排,相邻数字首尾相接,组成一个最大的整数。第一行有一个整数,表示数字个数。一个正整数,表示最大的整数。对于全部的测试点,保证。
2023-01-14 12:33:00
40
原创 当操作系统程序退出执行,让用户程序执行时,系统会()————操作系统
当操作系统程序退出执行,让用户程序执行时,系统会()C. 从内核态变为用户态。D. 从用户态变为内核态。A. 继续保持内核态。B. 继续保持用户态。
2023-01-11 21:36:54
61
原创 若一台计算机的机器字长为4字节,则表明该机器()————计算机组成原理
C. 在CPU中能够作为一个整体处理32位的二进制代码。若一台计算机的机器字长为4字节,则表明该机器()B. 能处理的数值最多由4位二进制数组成。A. 能处理的数值最大为4位十进制数。D. 在CPU中运算的结果最大位。
2023-01-11 21:34:37
160
原创 机器学习的逻辑回归(Logistic)的实例————预测学生是否被录取
【代码】机器学习的逻辑回归(Logistic)的实例————预测学生是否被录取。
2023-01-11 21:30:11
231
原创 P2010 [NOIP2016 普及组] 回文日期————C++
现在,牛牛想知道:在他指定的两个日期之间包含这两个日期本身),有多少个真实存在的日期是回文的。显然:一个日期只有一种表示方法,而两个不同的日期的表 示方法不会相同。在日常生活中,通过年、月、日这三个要素可以表示出一个唯一确定的日期。牛牛认为,一个日期是回文的,当且仅当表示这个日期的。都是真实存在的日期,且年份部分一定为。位数字是回文的,当且仅当对于所有的。位数字表示一个日期,其中,前。对于样例 1,符合条件的日期是。对于样例 2,符合条件的日期是。第一行表示牛牛指定的起始日期。之间,有多少个日期是回文的。
2023-01-10 13:08:02
252
原创 P1308 [NOIP2011 普及组] 统计单词数————C++
注意:匹配单词时,不区分大小写,但要求完全匹配,即给定单词必须与文章中的某一独立单词在不区分大小写的情况下完全相同(参见样例 1),如果给定单词仅是文章中某一单词的一部分则不算匹配(参见样例 2)。一行,如果在文章中找到给定单词则输出两个整数,两个整数之间用一个空格隔开,分别是单词在文章中出现的次数和第一次出现的位置(即在文章中第一次出现时,单词首字母在文章中的位置,位置从。一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数。
2023-01-07 13:33:06
304
原创 P1055 [NOIP2008 普及组] ISBN 号码————C++
以此类推,用所得的结果 $ \bmod 11$,所得的余数即为识别码,如果余数为;一个字符序列,表示一本书的 ISBN 号码(保证输入符合 ISBN 号码的格式要求)你的任务是编写程序判断输入的 ISBN 号码中识别码是否正确,如果正确,则仅输出。ISBN 码的首位数字表示书籍的出版语言,例如。,否则,按照规定的格式,输出正确的 ISBN 号码(包括分隔符。一行,假如输入的 ISBN 号码的识别码正确,那么输出。就是分隔符(键盘上的减号),最后一位是识别码,例如;之后的三位数字代表出版社,例如。
2023-01-06 13:10:50
295
原创 P5015 [NOIP2018 普及组] 标题统计————C++
凯凯刚写了一篇美妙的作文,请问这篇作文的标题中有多少个字符?注意:标题中可能包含大、小写英文字母、数字字符、空格和换行符。输出文件只有一行,包含一个整数,即作文标题的字符数(不含空格和换行符)。,输入可能包含大、小写英文字母、数字字符、空格和行末换行符。,输入只可能包含大、小写英文字母、数字字符及行末换行符。由于空格不计入结果中,故标题的有效字符数为。标题中共有 3 个字符,这 3 个字符都是数字字符。的长度(即字符串中的字符和空格数)。,保证输入为数字字符及行末换行符。输入文件只有一行,一个字符串。
2023-01-06 12:14:48
347
原创 P5594 【XR-4】模拟赛————C++、Python
教练需要为每一个人的每一次模拟赛做准备,为了减小工作量,如果在某一天有多个人打同一套模拟赛题,那么教练只需要在这一天准备一场使用这一套题的模拟赛即可。然而,每名 OIer 都有各自的时间安排,巧合的是,他们在接下来的。你作为机房大佬,教练想请你帮他计算一下,他每天需要准备多少场模拟赛。名 OIer 参与这次集训,教练为他们精心准备了。X 校正在进行 CSP 前的校内集训。天有空打模拟赛,那么他就必须在第。天教练需要准备的模拟赛场数。比如,小 X 在接下来的第。个整数表示接下来的第。
2023-01-05 20:20:47
270
原创 P2141 [NOIP2014 普及组] 珠心算测验————C++
某学校的珠心算老师采用一种快速考察珠心算加法能力的测验方法。他随机生成一个正整数集合,集合中的数各不相同,然后要求学生回答:其中有多少个数,恰好等于集合中另外两个(不同的)数之和?珠心算是一种通过在脑中模拟算盘变化来完成快速运算的一种计算技术。珠心算训练,既能够开发智力,又能够为日常生活带来很多便利,因而在很多学校得到普及。个正整数,每两个正整数之间用一个空格隔开,表示测试题中给出的正整数。注意,加数和被加数必须是集合中的两个不同的数。,表示测试题中给出的正整数个数。,测验题给出的正整数大小不超过。
2023-01-05 19:09:50
283
原创 P1427 小鱼的数字游戏————C++
这对小鱼的那点记忆力来说实在是太难了,你也不想想小鱼的整个脑袋才多大,其中一部分还是好吃的肉!所以请你帮小鱼编程解决这个问题。小鱼最近被要求参加一个数字游戏,要求它把看到的一串数字。结束),记住了然后反着念出来(表示结束的数字。一行内倒着输出这一串整数,以空格间隔。一行内输入一串整数,以。
2023-01-05 14:12:06
57
原创 为什么在计算机中是用二进制来存储数据的?
最后,二进制数字系统在计算机编程中也非常方便。计算机程序是由一系列指令构成的,这些指令可以用二进制数字来表示。二进制编码使得计算机能够识别和执行程序中的指令。首先,二进制是一种非常简单的数字系统,只有 0 和 1 两种数字,这使得它非常容易用电路实现。其次,二进制数字系统是一种对应二进制编码的有效方式,这种编码方式可以将任何数据(包括文本、图像、音频等)表示为一串 0 和 1。总的来说,二进制的简单性、通用性和方便性使得它成为了计算机中机器语言的首选。这使得计算机能够存储和处理各种类型的数据。
2023-01-04 22:05:58
342
原创 P1047 [NOIP2005 普及组] 校门外的树
这些区域用它们在数轴上的起始点和终止点表示。已知任一区域的起始点和终止点的坐标都是整数,区域之间可能有重合的部分。现在要把这些区域中的树(包括区域端点处的两棵树)移走。你的任务是计算将这些树都移走后,马路上还有多少棵树。输出一行一个整数,表示将这些树都移走后,马路上剩余的树木数量。我们可以把马路看成一个数轴,马路的一端在数轴。的马路上有一排树,每两棵相邻的树之间的间隔都是。第一行有两个整数,分别表示马路的长度。,表示一个区域的起始点和终止点的坐标。数轴上的每个整数点,即。NOIP 2005 普及组第二题。
2023-01-04 19:28:21
365
原创 P1046 [NOIP2005 普及组] 陶陶摘苹果————C++
个苹果到地面的高度,以及陶陶把手伸直的时候能够达到的最大高度,请帮陶陶算一下她能够摘到的苹果的数目。假设她碰到苹果,苹果就会掉下来。个苹果到地面的高度,两个相邻的整数之间用一个空格隔开。厘米高的板凳,当她不能直接用手摘到苹果的时候,就会踩到板凳上再试试。)的整数(以厘米为单位),表示陶陶把手伸直的时候能够达到的最大高度。输出包括一行,这一行只包含一个整数,表示陶陶能够摘到的苹果的数目。苹果成熟的时候,陶陶就会跑去摘苹果。陶陶家的院子里有一棵苹果树,每到秋天树上就会结出。NOIP 2005 普及组第一题。
2023-01-03 23:14:36
430
原创 用C++求两个数的最大公约数和最小公倍数。(数论的基础思想)
我们可以先把18变成18-4=14,然后求和4的最大公约数;但是每次都需要递减,碰到1000001和200这样的数字时,时间复杂度还是很高。我们可以把数字递减理解为除以数字很多次,那么就变成了18对4取余,此时变为2和4;通过观察18和4两个数字,发现18 = 2 * 9;9和2都是质数,而2则是共同的最大公约数。正常我们的思路求解最大公约数是暴力破解,遍历一遍公约数,取最大的那个,但是这样有一个问题,就是时间复杂度过高了。此时的a * b * k 正好式n和m的最小公倍数,所以就得到。
2023-01-03 19:10:52
429
Python课设实验——————公交车站查询系统。
2022-06-16
Python 高级编程第03章PPT内容
2020-12-08
Python 基础语法(史上最详细!!!)
2020-12-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人