摘要: 对于计算机中的死锁,我们有四种处理的方法,分别为预防死锁、避免死锁、检测死锁和解除死锁,而今天要说的Dijkstra的银行家算法就是最具有代表性的避免死锁的算法。 银行家算法的名字来源于该算法原本是为银行系统设计的,以确保银行在发放现金贷款时,不会发生不能满足所有客户需要的情况,在OS中可以用它来避 阅读全文
posted @ 2018-01-07 23:12 JAdam 阅读(15280) 评论(2) 推荐(2)
摘要: 利用顺序存储方式实现的栈称为顺序栈。类似于顺序表的定义,栈中的数据元素用一个预设的足够长度的一维数组来实现:datatype data[MAXSIZE],栈底位置可以设置在数组的任一个端点,而栈顶是随着插入和删除而变化的,用一个 int top 来作为栈顶的指针,指明当前栈顶的位置,同样将 data 阅读全文
posted @ 2017-02-27 21:24 JAdam 阅读(2573) 评论(0) 推荐(0)
摘要: 数据有有线性结构、树形结构、图状结构和集合四种逻辑结构,那么它们是如何存储的呢? 数据结构的存储结构有两种,分别是顺序存储和链式存储。顺序存储的特点是借助元素在存储器中的相对位置来表示数据元素之间的逻辑关系;链式存储的特点是借助指针表示数据元素质检单逻辑关系。 1.线性结构:结构中的元素之间存在着一 阅读全文
posted @ 2016-09-01 20:14 JAdam 阅读(10610) 评论(0) 推荐(0)
摘要: 我们都知道在数据类型中,char类型占1个字节,short占2个字节,int占4个字节,long占8个字节等等。 在计算结构体大小时需要考虑其内存布局,结构体在内存中存放是按单元存放的,每个单元多大取决于结构体中最大基本类型的大小,下面我们看几个例子: 1. 这里char占1个字节,int占4个字节 阅读全文
posted @ 2016-09-01 00:03 JAdam 阅读(9857) 评论(3) 推荐(2)