- 博客(42)
- 收藏
- 关注
原创 ZISUOJ 数据结构--图及其应用
最小生成树采用prim还是kruskal算法要看题目怎么给出数据,如果以邻接矩阵的形式给出,采用prim算法比较合适,如果以边和边的权重的形式给出,则采用kruskal算法比较合适。例如这里的D和E题采用kruskal算法比较好,但是不代表用prim算法不能做,我这两个题给出的就是prim的解法,但是某些题用另一个算法极不方便,因此还是建议采用题目所暗示我们应使用的方法最佳。主要考察建图,图的遍历以及求最小生成树。都还是比较简单的,后面就直接上代码了。
2024-05-24 01:54:58 448
原创 C++实现图的存储和遍历
许多新手友友在初学算法和数据结构时,会被图论支配过。我这里整理了一下图论常见的存储和遍历方式,仅供参考。如有问题,欢迎大佬们批评指正。存储我将提到四种方式:邻接矩阵、vector实现邻接表、数组模拟单链表实现的前向星实现邻接表、结构体数组直接存储边。遍历我将提到三种方式:dfs、bfs、按照边的权重值大小遍历输出。
2024-05-24 01:41:01 382
原创 ZISUOJ 高级语言程序设计实训-基础C(部分题)
2.欧拉筛(也称线性筛)+前缀和预处理:用使用欧拉筛法预处理出1~3e6内所有数的素性,在遍历一遍1~3e6(假设循环遍历为i),计算出i的各位数之和,如果i和i的各位数之和都为素数,则prefix[i]=prefix[i-1]+1否则prefix[i]=prefix[i-1]。从内层矩形开始遍历判断即可,满足条件就放进vector,最后先判断vector的大小,如果为0,要特殊处理输出,否则,顺序输出结果即可(因为遍历的时候就是有序的,所以不用再排序了)。题目说
2024-04-28 02:32:55 1057
原创 ZISUOJ 数据结构--队列及其应用
基本都是bfs的常见模板题型,思路都很直接,不过后面有两道题很搞心态,它们给的坐标x、y是反的,导致刚开始一直错。题目还是要看仔细,不能先入为主。
2024-04-22 22:19:22 373
原创 ZISUOJ 高级语言程序设计实训-基础B(部分题)
根据数据范围10^6,我直接使用最暴力的方法,遍历n到m,每个遍历到的数,都把它转成字符串,再使用的find()函数来查找'4'和'62',如果找到了,count++,否则continue,最后输出m-n+1-count即可。以字符串形式读入小数,从第三个字符开始统计,分子初始化为0,分母初始化为1,分子每次乘以10再加上字符-'0'的值(或者直接异或48也能实现同样的效果),分母每次乘以10,把两个数都除以它们的最大公约数再输出即可。基本的字符变换题,这里注意读入的问题即可。
2024-04-22 19:46:54 908
原创 面向对象——继承、多态、方法重写、构造方法重载简单例子
这学期开了面向对象的课程,老师上星期布置了作业,之前用JAVA写了一遍,今天心血来潮又用C++写了一遍。博主只会敲代码,但面向对象是小白一个,欢迎交流学习。
2024-04-15 22:24:07 275
原创 ZISUOJ 数据结构-栈
利用中缀表达式可以轻松求解,注意符号之间的优先级问题,计算'-'、'/'、'^'时要注意参与运算的两个数字的先后顺序。遇到左半边括号,将其入栈,遇到右半边括号,则先判断栈是否为空,若为空,则匹配失败,若不为空,则再判断栈顶元素是否是与之匹配的左半边括号,若不是,则匹配失败,一直匹配到栈空,如果栈空,则匹配成功,否则匹配失败。这个题相比上一题,不仅要匹配的数量更多,并且还要注意括号优先级的问题,我这里选择再加了一个哈希表来匹配优先级。跟第一题相似,注意括号对应匹配即可。
2024-04-15 21:00:13 555
原创 解决Dev-C++编译时不支持C++11特性的办法
Dev-C++的最新的编译器只能支持到C++14,如果想要使用C++17,C++20,C++2a,必须安装一个新的编译器,然后在Dev-C++中重新选择编译器,再按如下操作(只希望使用C++11或者C++14的也按如下操作):
2024-04-11 23:47:31 525
原创 ZISUOJ 高级语言程序设计实训-基础A
我下面直接用STL的__gcd()函数了,就不自己写了gcd()函数了。这个题,没啥特别好的思路,只能读入一行,把所有字符都转成小写字符,然后把字符串长度分奇偶从中间往两边遍历判断是否对称,特别地,四个左右括号要特殊判断。注意提示,暗示(明示)我们要用long long来算,并且计算好后还需要排序才能输出。我们发现到N次落地会经过N次下落,N-1次上升,计算最后的经过路径长度要注意。遍历所有行,如果是小写字符则转换成大写,如果是大写字符则转换成小写。循环遍历的时候一边用map记录出现次数,一边累加总和。
2024-04-11 23:40:19 1081 1
原创 ZISUOJ 数据结构-线性表
可以使用数组模拟两个单链表,每次循环找第一个链表里的最大值,然后将这个最大值头插到第二个链表并删除第一个链表中的该节点,最后遍历输出第二个链表即可。同理,可以用数组模拟三个双链表,然后循环找前两个链表中的最大值,然后头插到第三个链表中并且删除指定链表中的指定节点,最后遍历输出第三个链表即可。数组模拟双链表的填空题,想明白最后题目要我们输出的右侧第一个大于它的数,我们可以让每个结点的后继指向第一个大于它的数(若没有,则指向n+1)。这是上一题F题的具体应用,把F题的代码修改一下搬过来即可。
2024-04-08 12:27:15 604
原创 AcWing算法基础课——简单数据结构模板
本篇文章只给出代码模板,以及自己对该模板的理解。如果想看正确的算法思路,可以移步AcWing官网看详情。如有错误,欢迎大家批评指正。
2024-03-10 22:19:43 395 1
原创 牛客周赛 Round 36
C题可惜,比赛时模拟没有想明白,只对了一半,赛后看了大佬们的题解后恍然大悟,而F题是压根没思路,况且F题部分分也比较难拿。
2024-03-10 22:09:17 711
原创 AcWing算法基础课——简单算法模板
本篇文章只给出代码模板,以及自己对该模板的理解。如果想看正确的算法思路,可以移步AcWing官网看详情。如有理解错误,欢迎大家批评指正。
2024-03-09 23:33:09 466
原创 牛客小白月赛87
年后第一次写题,已经麻了,这次的题很简单但居然只写了两道题。有种本该发挥80分的水平,但是只做出了20分的水平的感觉。主要的思路是贪心,我们知道多个数如果做与运算,值肯定变小,根据题意,与的和就求最后一个数即可,前面的异或和或运算用前缀和的思想求一遍,然后最后用一个循环求和的最大值。(我这场就是一直卡在这题,我一开始想太复杂了,if讨论没明白,害~)用两个数组模拟四种情况,用deque似乎也能实现,不过我还不太会用deque。读懂题就很好做,需要考虑前缀最大值,然后模拟一下。
2024-02-16 22:39:58 325
原创 ZISUOJ 2022年算法基础公选课练习四(Map)
开一个map的map,键对应出现的数字,值对应键的值出现的次数,一旦出现一个数,则把该数的出现次数加1,最后遍历输出即可。同理,开一个map的map,键对应出现的单词,值对应该单词出现的次数,一旦出现一个单词,则把该单词的出现次数加1,最后遍历输出即可。开一个map,键存放学生的名字,值存放其的成绩,然后遍历map名字打擂台查找最高分,然后再遍历一遍map输出最高分的名字。同理,出现过的数字就输出,出现多次的只输出一次即可。
2024-02-14 16:59:43 674
原创 C++ Primer Plus笔记1
(以下数据特指win11操作系统中minGW的C++11标准)C++内置的9种整型变量C++11新增整型变量。
2024-02-14 15:46:51 540
原创 ZISUOJ 2022年算法基础公选课练习三(Set)
博主为了提早预习和C++的一些知识,自己琢磨外加查阅资料所写的代码,题目来源于22年初的学院老师组织的算法基础公选课的练习。我的代码甚至思路肯定存在许多不足和错误,欢迎大家批评指正。
2024-01-27 22:37:57 297
原创 「蓝桥·算法双周赛」第四场分级赛——小白入门赛
博主没有学习过数据结构,纯纯是陪跑的,来试试强度的。前两题都是签到题,第三题是思维题,第四题我用的multiset写的,这题考点好像叫平衡二叉搜索树,我不是很懂,也是蒙出来了。最后两题大概知道考啥,但是完全不会写,第五题应该考的是树状数组、线段树,第六题是考hash。
2024-01-27 21:46:22 300 1
原创 ZISUOJ 一道抽象的结构体排序题
这个题纯纯抽象,条件太多了,错了三次第四次提交的时候才对。这里顺带介绍一下C11的新特性lambda函数,之前有学习过python,对lambda还是比较熟悉的。lambda函数优点:1.它能够在需要使用的时候定义,而无需跳出当前函数,在函数外重新定义一个函数或者struct。2.使代码看起来简洁。
2024-01-26 03:14:39 292 1
原创 ZISUOJ 2023-2024学年第一学期《高级语言程序设计》期末试题(20240122)
早上考完C语言,趁着做题环境还在,赶紧复现写一下题解和思路。对于我个人来说,这次考试发挥中规中矩吧,如果考得时候冷静一点,可能错的次数会少一点,最后一题知道是用贪心做,但是当时没写出来,挺可惜的。
2024-01-22 13:06:00 570
原创 ZISUOJ C语言-期中习题课
临近期末考,我重新用C语言(有些必要的也用C++作为第二种方法)写了一遍之前期中考试的题目,直接放代码了,有题目思路方面的问题可以私信或私聊我。我就不解释思路了,因为题目数量太多啦。
2024-01-21 17:27:57 549 1
原创 ZISUOJ 第一阶段作业列表(Problem a-z)
临近期末考,我重新用C语言(有些必要的也用C++作为第二种方法)写了一遍之前第一阶段作业的题目,直接放代码了,有题目思路方面的问题可以私信或私聊我。我就不解释思路了,因为题目数量太多啦。这部分也都是些基础题,不想挂科的友友这些题都必须会写。Problem 0-9和最后几个题马上会更新。
2024-01-19 22:28:05 519 1
原创 ZISUOJ 第一阶段作业列表(Problem A-Z)
临近期末考,我考前复习重新用C语言写了一遍之前第一阶段作业的题目,直接放代码了,有题目思路方面的问题可以私信或私聊我。我就不解释思路了,因为题目数量太多啦。这部分都是些基础题,不想挂科的友友这些题都必须会写。Problem a-z马上会更新。
2024-01-19 01:23:21 388 1
原创 ZISUOJ 2022年算法基础公选课练习二(Vector)
博主刚学习C++不久,为了提早学习数据结构和C++的一些知识,自己琢磨外加查阅资料写了这些题的代码,题目来源于22年初的学院老师组织的算法基础公选课的练习。我的代码甚至思路肯定存在许多不足和错误,欢迎大家批评指正。
2024-01-14 01:35:50 498 1
原创 ZISUOJ 2022年算法基础公选课练习一(sort & string)
博主为了提早预习数据结构和C++的一些知识,自己琢磨外加查阅资料所写的代码,题目来源于22年初的学院老师组织的算法基础公选课的练习。我的代码甚至思路肯定存在许多不足和错误,欢迎大家批评指正。
2024-01-14 01:00:01 335 1
原创 ZISUOJ C语言-综合练习
博主是ZISU在校学生,刚学C/C++才3个月,为了记录自己的学习过程和分享思路,故写一些博客。当然我的代码许多时候不是最优解,欢迎大家评论留言一起学习。如果有友友想提交这些题试试自己的思路啥的,可以私我,因为外校友友应该是登陆不进咱们的平台的。对于搜索到本博客的同校友友,切勿直接照抄,理解了再自己码字码上去。
2024-01-07 16:52:51 638 1
原创 ZISUOJ C语言-结构体
博主是ZISU在校学生,刚学C/C++才3个月,为了记录自己的学习过程和分享思路,故写一些博客。当然我的代码许多时候不是最优解,欢迎大家评论留言一起学习。如果有友友想提交这些题试试自己的思路啥的,可以私我,因为外校友友应该是登陆不进咱们的平台的。对于搜索到本博客的同校友友,切勿直接照抄,理解了再自己码字码上去。
2024-01-07 14:39:38 518 2
原创 ZISUOJ C语言-函数
博主是ZISU在校学生,刚学C/C++才2个多月,为了记录自己的学习过程和分享思路,故写一些博客。当然我的代码许多时候不是最优解,欢迎大家评论留言一起学习。如果有友友想提交这些题试试自己的思路啥的,可以私我,因为外校友友应该是登陆不进咱们的平台的。对于搜索到本博客的同校友友,切勿直接照抄,理解了再自己码字码上去。
2023-12-17 01:04:41 238 1
原创 ZISUOJ 2023秋季综合训练(八)
博主是ZISU在校学生,刚学C/C++才2个多月,为了记录自己的学习过程和分享思路,故写一些博客。当然我的代码许多时候不是最优解,欢迎大家评论留言一起学习。如果有友友想提交这些题试试自己的思路啥的,可以私我,因为外校友友应该是登陆不进咱们的平台的。
2023-12-17 00:23:24 208 1
原创 PPP的两种验证方式(PAP、CHAP)
点到点协议(Point-to-Point Protocol,PPP)提供了一种在点到点链路上封装网络层协议信息的标准方法。PPP也定义了可扩展的链路控制协议(Link Control Protocol,LCP),使用验证协议协商在链路上传输网络层协议前验证链路的对端。
2023-09-10 05:17:35 6971 1
原创 Centos7.5配置iptables防火墙-网络系统管理赛项
废话不多说,直接上真题,这是2021年6月国赛Linux模块的IspSrv的工作任务:唯一不同的是我们要拿centos7.5来做准备工作:一台安装centos7.5系统的虚拟机需要提前配置好yum源以及安装ssh服务这里ssh工具使用SecureCRT8.51.关闭系统自带的防火墙临时关闭systemctl stop firewalld禁止开启启动systemctl disable firewalld2.安装iptables由于centos7不自带
2022-03-22 14:49:33 1617 1
原创 Centos7.5设置登录欢迎信息-网络系统管理赛项
由于2022年网络系统管理赛项的修改加之网上的关于这方面的资料以及博客较少,于是我打算写一篇关于Centos7.5设置登录欢迎信息的博客。准备工作:安装Centos7.5并且安装ssh服务的虚拟机一台1.编写动态脚本因为单纯修改/etc/issue的话,使用ssh登录并不会显示,而修改/etc/motd只能静态显示(即显示内容不会发生变化,如时间都需要动态显示,所以不使用上述两种方法),而且/etc/issue的文件内容显示在login提示符之前,而/etc/motd内容显示在用户成功登录系
2022-03-22 11:02:28 3430 2
原创 模拟搭建2022网络系统管理比赛Linux模块的环境
由于国赛通知,今年的Linux模块需要使用centos7以上或者统信UOS系统。之前还准备了很久的debian10,真是心累。准备工作准备四台centos7.5的虚拟机,ssh工具使用SecureCRT其中Rserver作为路由转发的服务器其他三台分别为各自网段的服务器或者客户机1.物理主机的虚拟网卡ip规划因为有三个网段,则需要准备三张虚拟网卡,我这里使用vmnet0(即自己的物理网卡)、vmnet1以及vmnet8虚拟网卡 ip/掩码 vmnet0
2022-03-20 20:33:20 2925 4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人