自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 数据结构--单链表(C语言)

首先,我们定义了一个节点结构体 Node,它包含图书的基本信息和指向下一个节点的指针。// 定义图书信息结构体}Node;通过这段代码,我们可以看到如何使用C语言实现一个简单的单链表。单链表的基本操作包括节点的插入、删除、更新、查询和展示。希望这篇博客能帮助你更好地理解单链表的实现原理。---希望这篇博客文案对你有帮助!

2024-12-27 14:59:52 561

原创 数据结构--顺序表的实现(C语言)

首先,我们定义一个顺序表结构体SeqList,它包含一个数组data用于存储元素,以及一个整数length用于记录顺序表的长度。// 定义顺序表结构体int length;}SeqList;

2024-12-27 14:46:33 356

原创 C++实现简单文件目录管理系统

今天和大家分享一个用C++实现的简单文件目录管理系统。这个项目虽小,但涵盖了链表操作、文件管理的基本概念,非常适合用来学习和练习C++编程。这是一个基于内存的单级文件目录管理系统,支持文件的创建、删除和目录显示等基本功能。系统使用链表结构存储文件信息,每个文件节点包含文件名和大小信息。这个项目虽然简单,但包含了很多基础且重要的编程概念。希望这篇文章能对正在学习C++的同学有所帮助。如果你有任何问题或建议,欢迎在评论区留言交流!---代码已开源,完整代码可以在文章开头找到。

2024-12-25 23:21:21 651

原创 死锁问题的解决——银行家算法

互斥条件:资源不能被多个进程同时使用请求和保持条件:进程在等待其他资源时,不释放已占有的资源不可剥夺条件:资源只能由进程自愿释放循环等待条件:存在一组进程循环等待其他进程的资源在本次实验中,我们实现了银行家算法,深入理解了死锁避免的原理和实现方法。通过设计核心数据结构(如可用资源向量、最大需求矩阵和分配矩阵),我们能够有效管理资源分配。实验过程中,我们实现了用户输入处理、资源请求验证、资源分配和安全性检查等功能。通过 getResourceRequest 函数,我们确保用户输入的有效性。

2024-12-18 14:22:01 1884

原创 哲学家干饭问题(基于C++)

哲学家就餐问题的场景设定在一张圆桌旁,五位哲学家围坐在桌子周围。每位哲学家面前有一根筷子,哲学家们的主要活动是思考和用餐。为了能够用餐,哲学家必须同时拿起左右两根筷子。这个简单的场景却引发了复杂的同步问题,成为了多线程编程中的经典案例。信号量结构体用于实现同一时间只能有一个哲学家拿起筷子,防止对同一个筷子的竞争,筷子结构体用于保证一个筷子一次只能被一个哲学家使用。// 信号量结构体// 互斥信号量,用于保护信号量计数// 条件变量,用于线程同步int sem;// 信号量计数。

2024-12-10 23:22:52 1383

原创 读者-写者问题(基于C++实现)

以下是我们实现的代码,使用了 C++11 的线程库、互斥锁和条件变量来管理读者和写者的访问。引入头文件我们定义了一个 Semaphore 结构体,用于管理互斥锁和条件变量// 信号量结构体,用于线程同步// 互斥信号量// 条件变量int sem;// 信号量计数// 全局互斥锁,用于保护输出,防止多个读者竞争输出在这篇博客中,我们实现了一个简单的多线程读者-写者模型,使用 C++ 的线程库来确保线程安全。通过使用互斥锁和条件变量,我们能够有效地管理对共享资源的访问。

2024-12-03 23:56:07 1801

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除