- 博客(93)
- 收藏
- 关注
原创 数据结构中无向图的邻接矩阵详解
本文介绍了图结构在计算机科学中的重要性及其邻接矩阵表示方法。通过一段优化的C语言代码,详细讲解了邻接矩阵的实现过程,包括数据结构定义、图的创建、输出和内存释放函数。分析了邻接矩阵的优缺点,指出其适用于边数较多的稠密图或需要频繁查询边的场景。文章强调学习数据结构不仅能提高编程能力,更能培养逻辑思维和问题解决能力,为计算机专业学生打下坚实基础。
2025-05-27 18:56:46
853
原创 探秘 OSPF 协议:从拓扑到实战的网络工程进阶之路
在数字洪流奔涌的时代,网络协议如同虚拟世界的交通法典,默默维系着数据的有序流动。其中,开放最短路径优先(OSPF)协议堪称网络世界的 “智能交通枢纽指挥官”,凭借在大型网络中精准高效的路由调度能力,成为无数网络工程师钻研的焦点。以下为期末HCIA课程的一道基础单区域OSPF实验题。
2025-05-27 18:19:08
1111
原创 保姆级 OSPF 实验配置指南:单区域 + 多区域实战攻略(附避坑指南)
初级:会敲命令按拓扑复制粘贴配置,能通 Ping 即满足(需注意细节如 Router-ID、宣告网段)中级:懂原理理解 LSA 类型(如 Type1 路由器 LSA、Type3 网络汇总 LSA)、DR/BDR 选举机制、区域间路由传递规则高级:会优化根据企业网规模设计区域架构,配置认证(MD5 或明文)增强安全性,调整接口优先级实现负载均衡。
2025-05-06 18:36:19
242
原创 OSPF 协议全解析:从原理到实战,大学生也能轻松吃透的网络核心协议
动手实操:每天花 30 分钟在 eNSP 上搭拓扑,比看 10 遍文档更有效费曼学习法:把 OSPF 原理讲给室友听,卡住的地方就是薄弱点记录错题:专门准备 "OSPF 翻车笔记",记录配置错误、邻居状态异常等问题现在就打开 eNSP,跟着本文步骤搭第一个 OSPF 网络吧!网络技术的魅力,就在于亲手让一个个设备互通时的成就感,加油,未来的网络工程师!
2025-05-06 12:35:31
777
原创 一文读懂华为生成树协议:原理、配置与实战
华为生成树协议 STP 和 MSTP 是网络工程中不可或缺的技术。STP 解决了二层网络的环路问题,MSTP 则在此基础上实现了链路负载均衡。对于网络工程专业的大学生来说,掌握这些技术不仅是课程学习的要求,更是未来从事网络相关工作的必备技能。
2025-05-06 10:54:11
928
原创 从括号匹配看栈:数据结构入门的实战与原理
作为数据结构入门的重要内容,掌握栈的相关知识不仅能帮助我们更好地理解计算机底层的运行机制,还能为后续学习更复杂的数据结构(如队列、树、图)打下坚实的基础。在栈中,新元素的添加(进栈,Push)和已有元素的移除(出栈,Pop)都只能在一端进行,这一端被称为栈顶(Top)。在计算机科学的世界里,数据结构是程序员的 “瑞士军刀”,不同的数据结构适用于不同的场景,能高效解决各类问题。今天,我们就通过一个经典的问题 —— 括号匹配,来深入理解栈的原理与应用。通过括号匹配问题,我们可以清晰地看到栈的优势:。
2025-05-02 22:11:26
475
原创 HCIA-Datacom 高阶:VLAN、VLANIF 与静态路由综合实验
LSW4 连接了三个不同 VLAN 的 PC(PC1 属于 VLAN 10、PC2 属于 VLAN 20、PC3 属于 VLAN 30 ),并通过 Ethernet 0/0/1 端口以 trunk 链路连接到 LSW3 的 GE 0/0/1 端口。为每个 VLAN 配置一个 VLANIF 接口并分配 IP 地址,该 IP 地址作为对应 VLAN 内主机的网关,从而实现不同 VLAN 间的三层通信。:静态路由是由网络管理员手动配置的路由信息,明确指定数据包到达特定目标网络的路径。
2025-04-29 19:50:41
676
原创 HCIA-Datacom 高阶实验全解析:VLAN + 单臂路由 + 静态路由 + OSPF 全网互通(保姆级图文教程,附避坑指南)
通过本实验,你将掌握:✅ VLAN 隔离广播域的二层配置技巧✅ 单臂路由子接口的封装与网关设置✅ 三层交换机 VLANIF 接口的 IP 配置方法✅ OSPF 多区域互联与静态路由引入✅ 不同网络层协议间的路由互通调试小插曲:实验中途发现 PC4和PC1能通,而PC4和路由器AR1通不了,请教了一个非常厉害的大佬,查看各设备路由表发现LSW1上没有去往10.0.1.0/24的路由。
2025-04-20 19:23:42
606
原创 HCIA-Datacom高阶:单臂路由、OSPF 及VLAN、VLANIF相关配置探索
本次实验通过 ensp 平台,对 VLAN、VLANIF、单臂路由及 OSPF 进行配置实践。现在,我们在AR1上添加一个loopBack 4,ip设置为4.4.4.4/32,然后宣告就可以体会到OSPF的超快学习速度。至此,pc1,pc2,pc3,pc4实现互通,接着配置单臂路由。接着,我们分别尝试在LSW3上添加一台pc8、在LSW2上添加一台pc9,分别宣告,使其互通。至此,pc6与pc7实现互通。最后尝试在路由器AR1上添加一台pc10,宣告,实现全网互通。接着我们在LSW4上添加一台pc7。
2025-04-20 14:08:22
297
原创 数据结构之二叉树的代码实现与分析
BiTNode;这里定义了二叉树节点的结构体BiTNode,包含数据域data以及左右子树指针lchild和rchild。这种定义方式简洁明了,为后续的操作奠定了基础。通过这段代码,我们可以看到二叉树在数据结构中的重要性和灵活性。递归作为解决二叉树问题的核心思想,贯穿了整个代码的实现过程。
2025-04-18 18:18:55
451
原创 数据结构之稀疏矩阵与三元组表示法
int i, j;ElemType e;} Triple;} TSMatrix;这里定义了两个结构体,Triple结构体用于存储非零元素的三元组,TSMatrix结构体用于存储稀疏矩阵的基本信息和非零元素的三元组。稀疏矩阵的三元组表示法是数据结构课程中的一个重要内容,它通过只存储非零元素的方式,有效地节省了存储空间。
2025-04-18 17:27:19
752
原创 数据结构中的宝藏秘籍之广义表
/ 标记该节点是原子还是列表union// 如果是原子,存储原子的值// 如果是列表,指向子列表} UNION;// 指向下一个节点} GLNODE;这段代码定义了广义表的节点结构GLNODE。tag字段就像一个神奇的标签,能够区分节点是原子还是列表。UNION联合体则根据tag的值,巧妙地存储原子或指向子列表的指针。next指针则负责将各个节点连接起来,形成一个有序的链条。这种设计让广义表能够灵活地表示不同类型的元素和复杂的嵌套结构,为后续的操作奠定了坚实的基础。
2025-04-18 17:00:02
661
原创 斐波那契数列计算:数据结构与算法视角
通过对这段 C 语言代码的分析,我们可以看到递归和非递归两种方式在计算斐波那契数列第 n 项时的差异。递归算法虽然代码简洁,易于理解,但由于存在大量的重复计算,时间复杂度较高,且会占用较多的栈空间;而非递归算法通过迭代的方式,避免了重复计算,时间复杂度和空间复杂度都更优。在实际应用中,我们应该根据具体情况选择合适的算法,以提高程序的性能。同时,这个例子也让我们深刻体会到数据结构和算法对程序性能的重要影响。
2025-04-18 16:17:21
736
原创 2025年3月计算机二级C语言程序设计新题
求最大幸运数,数组中最大的数字与其出现的次数相等就为最大幸运数,例如:数组a元素为6个,分别为:1,3,3,3,1,2,最大幸运数为3,数组b元素为5个,分别为0,2,1,3,1,则没有最大幸运数,返回-1.
2025-03-30 10:26:16
253
3
原创 HCIA-Datacom高阶:基础的单区域 OSPF 与多区域 OSPF的配置
单区域 OSPF 的扩展性较差,随着网络规模的增大,LSDB 的规模也会不断增大,导致路由器的处理负担加重,收敛时间变长。网络,如企业内部的局域网或校园网。在这些网络中,网络规模较小,拓扑结构相对简单,使用单区域 OSPF 可以满足网络的基本需求,同时降低配置和维护的成本。在这些网络中,网络规模较大,拓扑结构复杂,使用多区域 OSPF 可以有效地管理和优化路由信息,提高网络的性能和可靠性。扩展性好:通过将网络划分为多个区域,可以减少每个区域内的 LSDB 规模,降低路由器的处理负担,提高网络的扩展性。
2025-03-28 18:26:14
1163
原创 数据结构之多项式相加的链表实现
然后,通过循环读取用户输入的系数和指数,为每一项创建一个新节点,并将其插入到链表中合适的位置,保证链表按指数升序排列。在链表中,我们可以将每一项表示为一个节点,节点包含系数、指数和指向下一个节点的指针。使用链表来表示多项式是一种常见且有效的方法,它可以方便地处理多项式的各项,并且在进行多项式相加等运算时具有较好的灵活性。1、结构体定义了多项式节点的基本结构,包含系数、指数和指向下一个节点的指针。总结:通过使用链表来表示多项式,并实现多项式相加的功能,我们可以更好地理解链表的操作和应用。
2025-03-28 17:53:59
400
原创 数据结构之约瑟夫环的问题
约瑟夫环(Josephus problem)是一个经典的数学问题,其大意是:N 个人围成一圈,每次数到第 M 个人被淘汰,直到最后剩下一个人。数据结构选择:使用循环链表模拟环形队列,每个节点包含编号(code)和指向下一节点的指针(next)。1.使用双指针(p和pre)遍历链表,找到第 M 个节点。2.通过尾插法构建链表,最后将尾节点指向头节点形成环。3.打印链表前 5 个节点(方便验证链表正确性)。2.删除被淘汰节点,并处理头节点的特殊情况。3.循环直到只剩一个节点,输出最后存活者。
2025-03-28 17:32:23
576
原创 数据结构之串的模式匹配--KMP算法-利用next数组的代码实现
2、计算 next 数组:调用 GetNext 函数计算模式串的 next 数组,该数组用于在匹配过程中避免不必要的回溯。代码实现了 KMP(Knuth-Morris-Pratt)字符串匹配算法,用于在主串中查找模式串的位置。3、字符串匹配:调用 IndexKMP 函数在主串中查找模式串的位置,并输出结果。1、输入部分:提示用户输入主串和模式串,并计算它们的长度。
2025-03-28 17:10:05
281
原创 数据结构之队列的链式结构-初始化-判断队列是否为空-入队-出队-获取队头元素
数据结构之队列的链式结构基本操作-初始化-判断队列是否为空-入队-出队-获取队头元素。
2025-03-22 18:27:15
340
原创 数据结构之循环队列的顺序结构基本操作-基本结构-初始化-入队-出队-判断队列是否为空-获取队头元素
数据结构之循环队列的顺序结构基本操作-基本结构-初始化-入队-出队-判断队列是否为空-获取队头元素。满队列:(rear+1)%MAXSIZE==front。队尾:(rear+1)%MAXSIZE。
2025-03-22 18:13:21
328
原创 数据结构之基本队列-顺序结构实现-初始化-判断队列是否为空(front=rear)-出队-入队-队尾满了,调整队列-获取队头元素
数据结构之基本队列-顺序结构实现-初始化-判断队列是否为空(front=rear)-出队-入队-队尾满了,调整队列-获取队头元素——完整可运行代码。
2025-03-22 17:49:57
317
原创 数据结构之栈的基本操作-栈的初始化-判断栈是否为空-进栈/压栈-出栈-获取栈顶元素—栈的顺序结构初始化-动态内存分配—栈的链式结构实现-初始化-判断栈空-压栈-出栈-取栈顶——完整可运行代码
出栈/删除头节点后的那一个节点的数据(找到头节点p,用指针q记录要出栈的节点,通过改变p的后继节点实现出栈)数据结构之栈-栈的初始化-判断栈是否为空-进栈/压栈-出栈-获取栈顶元素。栈的链式结构实现-初始化-判断栈空-头插法/压栈-出栈-获取栈顶元素。
2025-03-22 17:03:05
234
原创 数据结构之双向链表-初始化链表-头插法-遍历链表-获取尾部结点-尾插法-指定位置插入-删除节点-释放链表——完整代码
数据结构之双向链表-初始化链表-头插法-遍历链表-获取尾部结点-尾插法-指定位置插入-删除节点-释放链表——完整代码。
2025-03-22 16:25:48
258
原创 计算机二级C语言部分(程序填空,程序修改,程序设计)真题
函数fun的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),将所指数组中大于平均值的数据移至数组的前部,小于等于平均值的数据移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。例如,字符串中的内容为:****A*BC*DEF*G*******,删除后,字符串中的内容应当是:****A*BC*DEF*G。学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:函数返回指定学号的学生数据,指定的学号在主函数中输入。
2025-03-11 15:12:00
275
原创 常用cmd命令
命令是一个多功能的命令,用于管理网络设置和资源。命令用于显示网络统计信息和当前的网络连接状态。它可以显示活动的TCP连接、端口监听状态、路由表等。命令用于查询DNS服务器以解析域名的IP地址。它可以显示域名的DNS记录和DNS服务器的响应时间。命令用于显示当前的TCP/IP网络配置。通过熟练使用这些CMD网络命令,用户可以有效地管理和诊断Windows系统中的网络问题。命令用于显示和修改路由表。在解决网络问题时,应逐步使用这些命令,以便准确诊断问题所在。在使用网络命令时,需要具有管理员权限。
2025-02-25 12:21:33
440
原创 C语言:在主函数中输入十个等长的字符串。用另一函数对它们排序,然后在主函数输出这10个已排好序的字符串。
(2)用指向一维数组的指针作函数参数。(1)用字符型二维数组。
2025-02-18 19:40:48
195
原创 C语言:将一个5x5的矩阵中最大的元素放在中心,4个角分别放4个最小的元素(顺序为从左到右,从上到下依次从小到大存放),写一函数实现之。用main函数调用。要求用指针处理问题!
将一个5x5的矩阵中最大的元素放在中心,4个角分别放4个最小的元素(顺序为从左到右,从上到下依次从小到大存放),写一函数实现之。用main函数调用。
2024-12-02 17:26:46
224
原创 C语言: 有n个人围成一圈,顺序排号。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。要求用指针方法处理
有n个人围成一圈,顺序排号。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。
2024-12-02 17:25:13
412
原创 C语言:有n个整数,使前面各数顺序向后移m个位置,最后m个数变成最前面m个数,写一函数实现以上功能,在主函数中输人n个整数和输出调整后的n个数。要求用指针方法处理!
有n个整数,使前面各数顺序向后移m个位置,最后m个数变成最前面m个数,见图8.43。写一函数实现以上功能,在主函数中输人n个整数和输出调整后的n个数。
2024-12-02 17:10:24
252
原创 C语言:用指针变量处理:输入a和b两个整数,按先大后小的顺序输出a和b
输入a和b两个整数,按先大后小的顺序输出a和b,用指针方法处理这个问题,不交换整型变量的值,而是交换两个指针变量的值。
2024-11-25 16:49:55
492
原创 C语言:写一个函数,用“起泡法”对输人的10个字符按由小到大顺序排列。
【代码】C语言:写一个函数,用“起泡法”对输人的10个字符按由小到大顺序排列。
2024-11-25 12:30:02
1004
原创 C语言:写两个函数,分别求两个整数最大公约数和最小公倍数主函数调用并输出结果
写两个函数,分别求两个整数最大公约数和最小公倍数主函数调用并输出结果。
2024-11-24 21:38:21
555
HCIA-Datacom高阶:vlan、vlanif、单臂路由、静态路由、ospf综合实验
2025-04-20
Kali 的基本配置 本实验主要介绍在新安装好kali的情况下,以用户身份第一次登录kali后, 应该进行哪些常用的配置,使得kali在使用起来更舒服 具体配置顺序如下:设置root用户->配置
2025-03-10
扫描器的使用(1)-Nmap扫描器的使用 Nmap 是一个网络连接端扫描软件,用来扫描网上电脑开放的网 络连接端 确定哪些服务运行在哪些连接端,并且推断计算机运 行哪个操作系统(这是亦称 finge
2025-03-10
Matesploit 的基本使用(1) 本实验主要学习Metasploit的一些基本命令操作 一、Metasploit 的启动 Metasploit 启动方式有两种 第一种是通过点击图标来启动
2025-03-10
拒绝服务攻击实例- Hping3 udp flood 攻击实验分析 基础知识介绍 UDP Flooding 攻击也是基于传输层的UDP协议来实现的,但与TCP协议不同的是,UDP协 议是面向无
2025-03-10
缓冲区溢出实例- 永恒之蓝实例分析 实验环境准备 使用kali 作为攻击机,windows7(旗舰版)作为靶机,靶机IP地址未知,但kali和靶机均 在同一个网段,可ping通
2025-03-10
ARP 欺骗实例 Kali 中利用Arpspoof 工具进行ARP攻击 ARP 攻击是利用ARP 协议设计时缺乏安全验证漏洞来实现的,通过伪造ARP数据包来 窃取合法用户的通信数据,造成影响网络传
2025-03-10
Matesploit 的基本使用(2) 今天的实验主要演示通过信息收集后,对目标系统使用Metasploit自带的攻击模块对目 标系统进行渗透测试的模拟攻击 Matesploit 的设置 打开K
2025-03-10
口令破解-Kali SMB暴力破解 暴力破解攻击是指攻击者通过系统的组合所有可能性(例如 登录时用的账户名、密码),尝试所有的可能性破解用户的账户 名、密码等敏感信息,攻击者会经常使用自动化脚本组
2025-03-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人