当前位置:文档之家› 湖南大学(866)数据结构模拟题

湖南大学(866)数据结构模拟题

湖南大学(866)数据结构模拟题
湖南大学(866)数据结构模拟题

湖南大学《数据结构》2016年考研模拟试题

第一套

一、选择题(每小题1分,共10分)

1、在一个长度为n的顺序表的任一位置插入一个新元素的渐进时间复杂度为( )。

A、O(n)

B、O(n/2)

C、O(1)

D、O(n2)

2、带头结点的单链表first为空的判定条件是:( )

A、first==NULL

B、first一>1ink==NULL

C、first一>link==first

D、first!=NUlL

3、当利用大小为n的数组顺序存储一个队列时,该队列的最大长度为( )。

A、n一2

B、n—l

C、n

D、n+1

4、在系统实现递归调用时需利用递归工作记录保存实际参数的值。在传值参数情形,需为对应形式参数分配空间,以存放实际参数的副本;在引用参数情形,需保存实际参数的( ),在被调用程序中可直接操纵实际参数。

A、空间

B、副本

C、返回地址

D、地址

5、在一棵树中,( )没有前驱结点。

A、分支结点 D、叶结点C、树根结点 D、空结点

6、在一棵二叉树的二叉链表中,空指针域数等于非空指针域数加( )。

A、2

B、1

C、0

D、一1

7、对于长度为9的有序顺序表,若采用折半搜索,在等概率情况下搜索成功的平均搜索长度为( )的值除以9。

A、20

B、18

C、25

D、22

8、在有向图中每个顶点的度等于该顶点的( )。

A、入度

B、出度

C、入度与出度之和

D、入度与出度之差

9、在基于排序码比较的排序算法中,( )算法的最坏情况下的时间复杂度不高于O(n10g2n)。

A、起泡排序

B、希尔排序

C、归并排序

D、快速排序

10、当α的值较小时,散列存储通常比其他存储方式具有( )的查找速度。

A、较慢

B、较快

C、相同

二、填空题(每小题1分,共10分)

11、二维数组是一种非线性结构,其中的每一个数组元素最多有个直接前驱(或直接后继)。

12、将一个n阶三对角矩阵A的三条对角线上的元素按行压缩存放于一个一维数组B中,A[0][0]存放于B[0]中。对于任意给定数组元素B[K],它应是A中第行的元素。

13、链表对于数据元素的插入和删除不需移动结点,只需改变相关结点的

域的值

14、在一个链式栈中,若栈顶指针等于NULL则为。

15、主程序第一次调用递归函数被称为外部调用,递归函数自己调用自己被称为内部调用,它们都需要利用栈保存调用后的地址。

16、在一棵树中,结点没有后继结点。

17、一棵树的广义表表示为a((c,d(e,f),g(h)),i(j,k(x,y))),结点f 的层数为。假定根结点的层数为0。

18、在一棵AVL树(高度平衡的二叉搜索树)中,每个结点的左子树高度与右子树高度之差的绝对值不超过。

19、n(n>0)个顶点的无向图最多有条边,最少有条边。

20、在索引存储中,若一个索引项对应数据对象表中的一个表项(记录),则称此索引为索引,若对应数据对象表中的若干个表项,则称此索引为

索引。

三、判断题(每小题1分,共10分)

21、数组是一种复杂的数据结构,数组元素之间的关系既不是线性的也不是树形

的。(

22、链式存储在插人和删除时需要保持物理存储空间的顺序分配,不需要保持数

据元素之间的逻辑顺序。

23、在用循环单链表表示的链式队列中,可以不设队头指针,仅在链尾设置队尾

指针。

24、通常递归的算法简单、易懂、容易编写,而且执行的效率也高。()

25、一个广义表的表尾总是一个广义表。

()

26、当从一个小根堆(最小堆)中删除一个元素时,需要把堆尾元素填补到堆顶

位置,然后再按条件把它逐层向下调整,直到调整到合适位置为止。

27、对于一棵具有n个结点,其高度为h的二叉树,进行任一种次序遍历的时间

复杂度为O(h)。

()

28、存储图的邻接矩阵中,邻接矩阵的大小不但与图的顶点个数有关,而且与图

的边数也有关。

29、直接选择排序是一种稳定的排序方法。

()

30、闭散列法通常比开散列法时间效率更高。

()

四、运算题(每小题8分,共40分)

31、设有一个10X10的对称矩阵A,将其下三角部分按行存放于一个一维数组B 中,A[0][0]存放于B[0]中,那么A[8][5]存放于B中什么位置。

32、这是一个统计单链表中结点的值等于给定值x的结点数的算法,其中while

循环有错,请重新编写出正确的while循环。

Int count(ListNode * Ha,ElemType x)

{//Ha为不带头结点的单链表的头指针

int n=0;

while(Ha一>link!=NULL){

Ha=Ha-->link;

if(Ha一>data== x)n+十;

return n;

33.已知一棵二叉树的前序和中序序列,求该二叉树的后序序列。

前序序列:A,B,C,D,E,F,G,H,I,J

中序序列:C,B,A,E,F,D,I,H,J,G

后序序列:

34、已知一个有序表(15,26,34,39,45,56,58,63,74,76,83,94)顺序存储于一维数组a〔12)中,根据折半搜索过程填写成功搜索下表中所给元素34,56,58,63,94时的比较次数。

元素值

34

56

58

63

94

比较次数

35、设散列表为 HT[17],待插人关键码序列为{Jan,Feb,Mar,Apr,May,June,

July,Aug,Sep,Oct,Nov,Dec},散列函数为 H(key)=「i/2」,其中,i 是关键码第一个字母在字母表中的序号。现采用线性探查法解决冲突。

字母(全以竖行排列)

ABCDEFGHIJKLM

序号

12345678910111213

字母

NOPQRSTUVWXYZ

序号

14151617181920212223242526

(1)试画出相应的散列表;

(2)计算等概率下搜索成功的平均搜索长度;

五、算法分析题(每小题8分,共24分)

36、阅读下列算法.并补充所缺语句

void Purge_linkst(LisNode *&la){

// 从头指针为1a的带表头结点的有序链表中删除所有值相同的多余元素,// 并释放被删结点空间。

ListNode p,q,t;ElemType temp;

p=la-->link;

while(p!=NULL){

q=P;

temp=P一>data ;

p=p一>link;

if(P!=NULL &&__________)P=P->link;

else {

while(p!=NULL&&__________){

t=p;p=pà1ink;

delete t;

}

q一>link=p;

}

}

}

37、下面给出一个排序算法,它属于数据表类的成员函数,其中currentSize

是数据

表实例的当前长度,Vector[]是存放数据表元素的一维数组。

Template

Void dataList<T>::unknown(){

T temp;int i,j,n=currentSize;

for(i=1; i

If(Vector[i].key

Temp=Vector[i];Vector[i]=Vector[i—1];

for(j=i-2;j>=0;j--)

if(temp.kev< Vector[j].key)Vector[j+1]=Vector[j];

else break ;

Vector[j+1]=temp;

(1)写出该算法的功能。

(2)针对有n个数据对象的待排序的数据表,在最好情况下,算法的排序码比较次数和对象移动次数分别是多少?

比较次数:

移动次数:

38、已知二叉树中的结点类型用BinTreeNode表示,被定义为:

struct BinTreeNode(ElemType data;BlnTreeNode *leftChild,

*rightChild;};

其中data为结点值域,leftChild和rightChild分别为指向左、右子女结点的指针域

根据下面函数的定义指出函数的功能。算法中参数BT指向一棵二叉树的树根结点。

BinTreeNode *BinTreeSwopX(BinTreeNode*BT){

if(BT==NULL)return NULL;

else{

BinTreeNode *pt=new BinTreeNode;

pt一>data=BT一>data;

pt一>rightChild=BinTreeswopX(BT一>leftChild);

pt一>lefchild=BinTreeSWOpX(BT一>rightChild);

return pt;

}}

六、算法设计题(6分)

39、已知二叉树中的结点类型用BinTreeNode表示,被定义为:

struct BTreeNode{char data;BinTreeNode*leftChild,*rightChild;);其中 data为结点值域,leftChild和rightChild分别为指向左、右子女结点的指针域,根据下面函数声明编写出求一棵二叉树中结点总数的算法,该总数值由函数返回。假定参数BT初始指向这棵二叉树的根结点。

int BTreeCount(BinTreeNode *BT);

模拟题一参考答案

一、选择题(每小题1分,共10分)

1.A 2.B 3.B 4.D 5.C

6.A 7.C 8.C 9.C 10.B

二、填空题(每小题1分,共10分)

11.2 12.「(K+1)/3」 13.指针 14.空栈 15.返回 16.叶子

17.3 18.1 19.n(n一1)/2 0

20.稠密稀疏

三、判断题(每小题1分,共10分)

21.对 22.错 23.对 24.错 25.对26.对, 27.错 28.错 29.错30.错

四、运算题(每小题8分,共40分)

31.根据题意,矩阵A中当元素下标I与J满足I≥J时,任意元素A[I][J]在一维数组B中的存放位置为I*(I+1)/2+J,因此,A[8][5]在数组B中位置为

8*(8+1)/2+5=4l

32.while(Ha!=NULL){

if(Ha一>data==x)n++;

Ha=Ha一>1ink;

}

33.后序序列:C,B,F,E,I,J,H,G,D,A

34.判断结果:

元素值

34

58

63

94

比较次数

2

1

3

4

4

//对1个给1分,全对给8分

35.H(Jan)=「10/2」=5,成功. H(Feb)=「6/2」=3,成功.

H(Mar)=「13/2」=6,成功. H(Apr)=「l/2」=0,成功.

H(May)=「13/2」=6,=7,成功, H(June)=「10/2」=5,=6,=7,=8,成功.

H(July)=「10/2」=5,=6,=7,=8,=9,成功。

H(Aug)=「l/2」=0,=1,成功. H(Sep)=「19/2」=9,=10,成功.

H(Oct)=「15/2」=7,=8,=9,=10,=1l,成功.

H(Nov)=「14/2」=7,=8,=9,=10,=11,=12,成功.

H(Dec)=「4/2」=2,成功.

(1)相应的散列表(6分)错一个存储位置扣1分,最多扣6分。

1

3

4

5

6

7

8

9

10

11

12

13

Apr Aug Dec Feb

Jan Mar May June July Sep

Nov

(1)

(2)

(1)

(1)

(1)

(1)

(2)

(4)

(5)

(2)

(5)

(6)

(2)搜索成功的平均搜索长度为

l/12*(1+2+l+l+l+l+2+4+5+2+5+6):3l/12 (2分) 五、算法分析题(每小题8分,共24分)

36.p——>data>temp //4分

p—>data=temp //4分

37.算法功能及执行效率

(1)该算法的功能是直接插入排序。(4分)

(2)n—1 0 (2分 2分

38.算法功能:生成一棵新二叉树并返回树根指针,该二叉树是已知二叉树BT 中所有结点的左、右子树交换的结果。

六、6分,请根据编程情况酌情给分。

39.

Int BTreeCount(BinTreeNode *BT){

if(BT==NULL)return 0; //2分

else return BTre eCount(BTàleftChild)+BTreeCount(BT-->rightChild)十l;

//4分

}

湖南大学《数据结构》2016年考研模拟试题

第二套

一、单选题:判断下列各小题叙述的正误。对,在题号前的括号内填入“√”;错,在题号前填入“×”。(每小题3分,共24分)

()(1)有n个结点的不同的二叉树有n!棵。

()(2)直接选择排序是一种不稳定的排序方法。

()(3)在2048个互不相同的关键码中选择最小的5个关键码,用堆排序比用锦标赛排序更快。

()(4)当3阶B 树中有255个关键码时,其最大高度(包括失败结点层)不超过8。

()(5)一棵3阶B 树是平衡的3路搜索树,反之,一棵平衡的3路搜索树是3阶B 树。

()(6)在用散列表存储关键码集合时,可以用双散列法寻找下一个空桶。在设计再散列函数时,要求计算出的值与表的大小m互质。

()(7)在只有度为0和度为k的结点的k叉树中,设度为0的结点有n0个,度为k的结点有nk个,则有n0=nk+1。

()(8)折半搜索只适用与有序表,包括有序的顺序表和有序的链表。

二、阅读理解题:说明下面递归过程的功能(10分)

int unknown(BinTreNode * t){

//指针T是二叉树的根指针。

if(t==NULL)return-1;

elseif(unknown(t—leftChild)>=unknown(t—rightChild))

return 1+unknown(t—leftChild));

elsereturn 1+unkuown(t—rightChild);

三、简答题(每小题12分,共36分)

1.设已有12个不等长的初始归并段,各个归并段的长度(包括记录数)分别为RUN1(25),RUN2(13),RUN3(04),RUN4(55),RUN5(30),RUN6(47),RUN7(19),RUN8(80),RUN9(76),RUN10(92),RUN11(55),RUN12(89)

若采用的是4路平衡归并排序,试画出其最佳归并树,并计算每趟归并时的读记录数。(括号内即为该归并段包含的记录数)

2.设散列表的长度m=13;散列函数为H(K)=K mod m,给定的关键码序列为19,14,23,01,68,20,84,27,55,11,试画出用线性探查法解决冲突时所构造的散列表。并求出在等概率的情况下,这种方法的搜索成功时的平均搜索长度和搜索不成功的平均搜索长度。

0 1 2 3 4 5 6 7 8 9 10 11 12

搜索成功时的平均搜索长度为:ASLsucc=

搜索不成功时的平均搜索长度为:ASLunsucc=

3.画出在一个初始为空的AVL树中依次插入3,1,4,6,9,8,5,7时每一步插入后AVL树的形态。若做了某种旋转,说明旋转的类型。然后,给出在这棵插入后得到的AVL树中删去根结点后的结果。

四、(10分)

以知一组元素为(46,25,78,62,12,37,70,29),试画出按元素排列次序插入生成的一棵二叉搜索树。

五、综合算法题(10)

设有一个表头为first的单链表。试设计一个算法,通过遍历一趟链表,将链表中所有结点按逆序链接。

六、程序填空题

下面给出的算法是建立AOV网络并对其进行拓扑排序的算法,其中有多个语句缺失。

Void Graph : : TopologicalSort(){

Edge * p , q ; int I , j , k ;

For (I=0; I

NodeTable[I].adj=NULL;

1、;

}

cin>> j >> k ;

while ( j&& k){

p=new Edge ( k ) ;

p—link=NodeTable[ j ].adj ;

2、;

Count [ k ] ++ ;

Cin >> j >> k ;

}

int top=-1 ;

for ( I=0, I

if (count[ I ]=0 ) {

count[ I ]=top ;

3、

}

for ( I=0 ; I< n ; I++ )

if (top = -1 )

{ cout << “Network has a cycle” << endl ; return ; } else {

j= top; 4、;

cout <

q=NodeTable[ j ].adj ;

while ( q ) {

k= q—dest ;

if (----count [ k ] == 0

count [ k ] = top ;

top = k ;

}

5、;

}

}

}

请将缺失的语句补上:

1、

2、

3、

4、

5、

(2)请给出对于下面AOV网络,使用上述算法进行拓扑排序的结果,以及在count 数据库中建立的链式栈的变化。(top是栈顶指针)(5分)

B

--------------------------------------------------------------------------------

--------------------------------------------------------------------------------

A D E F

C

--------------------------------------------------------------------------------

top

A

B

C

D

E

F

初始

模拟题二答案及评分标准

一、单选题

解答(1)×(2)√(3)×(4)√(5)×(6)√(7)×(8)×

二、阅读理解题

解答:计算二叉树的高度(深度)。

三、简答题

1、解答:构造最佳归并树

因为(12-1)/(4-1)=2,所以需要补充4-2-1=1个空归并段,命名为RUN(0)。依此构造4叉霍夫曼树:

R0(00) R3(04) R2(13) R7(19)

R1(25) R5(30) R0237(36) R6(47) R4(55) R11(55) R9(76) R8(80)

R12(89) R12(92) R0123567(138) R48911(266)

R0-12(585)

此即最佳归并树。第一趟读记录数为36,第二趟读记录数为138+266=404,第三趟读记录书数为89+92+138+266=585。

2 、解答

设散列表的长度 m=13;散列函数为H(K)=K mod m,给定的关键码序列为19,14,23,01,68,20,84,27,55,11,则有

H(19)=6 ,成功; H(14)=1 ,成功; H(23)=10 ,成功;

H(01)=1 ,冲突,=2,成功; H(68)=3 ,成功; H(20)=7 ,成功;

H(84)=6 ,冲突,=7,冲突,=8,成功;

H(27)=16 ,冲突,=2,冲突,=3,冲突,=4,成功;

H(55)=3 ,冲突,=4,冲突,=5,成功; H(11)=11 ,成功;

0 1 2 3 4 5 6 7 8 9 10 11 12

14

01

68

27

5

19

20

84

23

11

(1)(2)(1)(4)(3)(1)(1)(3)(1)(1)

在等概率的情况下,搜索成功时的平均搜索长度:

ASLSUCC=18/10=1.8

搜索不成功时的平均搜索长度:

ASLSUCC=52/13=4

3、画出在一个初始为空的AVL 树中依次插入3,1,4,6,9,8,5,7时每一步插入后AVL树的形态。若做了某种旋转,说明旋转的类型。然后,给出在这棵插入后得到的AVL树中删去根结点的结果。

解答:

3 3 3 3 3 3

--------------------------------------------------------------------------------

1 1 4 1 4 1 4 左单旋 1 6

6 6 4 9

9

3 6 6

1 6 左单旋 3 9 3 9

--------------------------------------------------------------------------------

4 9 1 4 8 1 4 8

5

6 6

3 9 3 8

1 4 8 右单旋 1 4 7 9

--------------------------------------------------------------------------------

5 7 5

这个AVL 树中删除根结点时有两种方案:

方案1 :在根的左子树中沿右链走到底,用5递补根结点中原来的6,再删除5所在的结点。

5

SQL数据库图书管理系统(完整代码)

作品设计报告书题目:《图书管理系统》 班级网络2012-1班 学号 姓名 课程名称数据库应用技术 指导教师

目录

数据库课程设计报告书 一、设计目标 1.掌握计算机管理信息系统设计的一般方法,主要包括系统分析、系统设计的组织 和实施。 2.关系型数据库管理系统的编程技术,并能独立完成一般小系统的程序设计、调试 运行等工作。 3.培养把所学知识运用到具体对象,并能求出解决方案的能力。 二、数据库存储设计指导思想 在数据库存储设计的无数选择中,简单是系统架构师和DBA 的秘密武器。 简单,有时候就来自于对一个特定的表或表空间没有选择最优I/O 特性,总有这么一种可能,一个富有经验的DBA 拥有高超的存储技能并可以没有时间限制的去为一个非常重要的表或者索引配置一个存储。然而这样做的问题是,就算能达到设计的最佳性能,为了维护原始对象,这也经常造成对一个系统的管理变得更加复杂。好的数据库存储设计的要点是,在一个动态系统上,实现所有目标应该是最初的系统设计的一部分,并应该在数据库运行过程中长期进行。这篇文档简单的最佳实践描述达到了这些目标并且几乎没有性能损失。 三、任务 角色:读者、图书馆馆员、系统管理员;基础数据:读者信息、图书信息、操作员信息;业务数据:借还书记录登记、罚款登记;统计数据:书籍借阅情况统计或读者借阅情况统计。基本要求:利用数据库技术,完成基础数据和业务数据的储存和操作,数据库设计合理1.设计报告:含E-R图、数据字典、关系模式、关系实例、查询描述、关系代数、SQL 实现的查询语言及查询结果。 2.上机实现。

1.问题描述 1.1背景 随着图书馆规模的不断扩大,图书数量也相应的增加,有关图书的各种信息量也成倍增加,面对着庞大的信息量,传统的人工方式管理会导致图书馆管理上的混乱,人力与物力过多浪费,图书馆管理费用的增加,从而使图书馆的负担过重,影响整个图书馆的运作和控制管理,因此,必须制定一套合理、有效,规范和实用的图书管理系统,对图书资料进行集中统一的管理。 另一方面,IT产业和Internet获得了飞速发展,计算机应用已渗透到了各个领域,引起信息管理的革命,实现了信息的自动化处理,提高了处理的及时性和正确性。 提高图书管理工作效率,作到信息的规范管理,科学统计和快速查询,让图书馆更好的为学校,社会服务。 1.2数据需求 图书馆管理信息系统需要完成功能主要有: 1. 读者基本信息的输入,包括借书证编号、读者姓名、读者性别。 2.读者基本信息的查询、修改,包括读者借书证编号、读者姓名、读者性别等。 3.书籍类别标准的制定、类别信息的输入,包括类别编号、类别名称。 4.书籍类别信息的查询、修改,包括类别编号、类别名称。 5.书籍库存信息的输入,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、登记日期。 6.书籍库存信息的查询,修改,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期登记日期等。 7.借书信息的输入,包括读者借书证编号、书籍编号、借书日期。 8.借书信息的查询、修改,包括借书证编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期等。 9.还书信息的输入,包括借书证编号、书籍编号、还书日期。 10.还书信息的查询和修改,包括还书读者借书证编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期等。 11.超期还书罚款输入,还书超出期限包括超出期限还书的读者借书证号,书籍编号,罚款金额。

中国人民大学图书馆数据库资源介绍

中国人民大学图书馆数据库资源介绍 (之十) EBSCO系列数据库 EBSCO公司是世界上最大的提供期刊、文献定购及出版服务的专业公司之一,从1986年开始出版电子出版物,共收集了1万余种索引、文摘型期刊(其中6000余种有全文内容),收录范围涵盖自然科学、社会科学、人文和艺术等各类学术领域。 我馆购买了该公司的两个主要的全文数据库:《Business Source Premier》(商业资源电子文献库)和《Academic Search Elite》(学术期刊全文数据库)。 数据库介绍 Business Source Premier (商业资源电子文献库):是全球最大的商业资源全文数据库,收录4000余种索引、文摘型期刊和报纸,其中3600多种期刊和报纸有全文内容。数据库收录范围涵盖所有商业领域,包括国际商务、经济学、经济管理、金融、会计、劳动人事、银行等。该数据库提供30余种顶级学术报刊的全文内容,如“华尔街日报”(The Walls Street Journal)、“哈佛商业评论”(Harvard Business Review)、“每周商务”(Business Week)、“财富”(Fortune)、“经济学家智囊团国家报告”(EIU Country Reports)、American Banker、Forbes、The Economist等。该数据库从1990年开始提供全文,题录和文摘则可回溯检索到1984年,数据库每日更新。 Academic Search Elite (学术期刊全文数据库):为全球最大的跨学科学术期刊全文数据库,收录7300多种期刊,其中3100多种期刊为全文电子期刊,主要用户为学术研究机构。数据库收录范围几乎涵盖学术研究各领域,包括社会科学、人文科学、教育、计算机科学、工程、物理学、化学、语言学、艺术、文学、医药学、种族研究等。数据库可回溯检索到1975年。数据库每日更新。 检索方式 EBSCO数据库提供基本检索和高级检索两种检索方式,可从关键词、主题词、出版物、索引、图片、参考文献等途径进行检索。 EBSCO给用户提供了各种显示清楚、链接灵活的检索界面和图标;在许多全文中同时提供PDF(FullPapeImape)和ASCII(FullText)两种格式;在部分的文本格式中还保留了印刷版图表和照片,可打印出与印刷版面完全相同的页面,又便于在计算机屏幕上完整阅读全文和快速下载保存。 网址:https://www.doczj.com/doc/7c646573.html,/ 您在使用过程中如有意见和建议,请与我们联系。 电话: 62511371 62511079 62511670 E-mail: tsgzx@https://www.doczj.com/doc/7c646573.html, tsgzx3@https://www.doczj.com/doc/7c646573.html, tsgjxb@https://www.doczj.com/doc/7c646573.html, tsgjx3@https://www.doczj.com/doc/7c646573.html,

数据库图书管理系统

create database 图书管理系统 on ( name = 图书管理系统, filename ='c:\图书管理系统.mdf', size = 10 , maxsize =20 , filegrowth=5) log on ( name = lib_log, filename= 'c:\lib_log.ldf', size = 5, maxsize = 25 , filegrowth =5 ) Create table 管理员信息表 ( 工作号varchar(10) primary key not null, 姓名varchar(10) , 性别varchar(10), 电话varchar(10) ); (2)书籍信息表的建立 drop table 图书信息表 create table 图书信息表 ( 图书编号varchar(20) primary key not null, 书名varchar(50) not null, 主编varchar(20) not null, 出版社varchar(20) not null, 作者varchar(20) not null); (3)读者信息表的建立 create table 读者信息表 ( 读者学号varchar(10) primary key not null, 读者姓名varchar(10) not null, 联系电话varchar(10) not null, 读者性别varchar(5) not null, 所在院系varchar(10) ) (4)借阅关系表建立 drop table 借阅表 create table 借阅表

最新湖南大学数据结构第5次作业

1 1、画出对下列存储于数组中的值执行buildheap后得到的最大值堆: 2 10 5 12 3 2 1 8 7 9 4 3 4 先序遍历为12 10 4 1 2 9 5 8 3 7 5 中序遍历为1 4 2 10 5 9 12 3 8 7 6 7 2、假设某字母表各个字母的权如下: 8 Q Z F M T S O E 9 2 3 10 10 10 15 20 30 10 (a)按照这个字母表,一个包含n个字母的字符串采用Huffman编码在最差情 11 况下需要多少位?怎样的串会出现最差情况? 12 13 在最差的情况下需要5*n位,当所有的字母都是Q或者Z的时候。 (b)按照这个字母表,包含n个字母的字符串采用Huffman编码在最佳情况 14 15 下需要多少位?怎样的串会出现最佳情况? 16 在最佳的情况下需要2*n位,当所有的字母都是E或者O的时候。 17 (c)按照一个字母表,一个字母平均需要多少位? 18 (2*30 + 2*20 + 3*15 + 3*10 + 3*10 + 4*10 + 5*3+ 5*2)/100 =2.7 19 ∴ 2.7

20 3、编写一个算法来判断两棵树是否相同。尽可能提高算法效率,并分析算法21 的运行时间代价。 22 template 23 bool Compare(GTNode* tree1, GTNode* tree2) { 24 GTNode *num1, *num2; 25 if (((tree1 == NULL) && (tree2 != NULL)) || 26 ((tree2 == NULL) && (tree1 != NULL))) 27 return 0; 28 if ((t1 == NULL) && (t2 == NULL)) return 1; 29 if (tree1->val() != tree2->val()) return 0; Num1 = tree1->left_child(); 30 31 Num2 = tree2->left_child(); 32 while(!((num1 == NULL) && (num2 == NULL))) { if (!Compare(num1, num2)) return false; 33 34 if (num1 != NULL) num1 = num1->right_value(); 35 if (num2 != NULL) num2 = num2->right_value(); 36 }} 37 38 O(n)

数据库图书管理系统含代码范文

数据库图书管理系 统含代码

目录 一.需求描述和系统边界 ........................................ 错误!未定义书签。二.需求分析 ............................................................ 错误!未定义书签。 1.业务需求 .............................................................. 错误!未定义书签。 2.功能需求及数据需求分析 ................................... 错误!未定义书签。 3.业务规则分析....................................................... 错误!未定义书签。三.实体集及属性 .................................................... 错误!未定义书签。四.联系集及E-R图................................................. 错误!未定义书签。五.逻辑数据库设计 ................................................ 错误!未定义书签。六.数据库编程 ........................................................ 错误!未定义书签。 1.创立表 .................................................................. 错误!未定义书签。 2.创立触发器 .......................................................... 错误!未定义书签。 3.管理员操作 .......................................................... 错误!未定义书签。 4.读者操作 .............................................................. 错误!未定义书签。 5. 管理员对借阅关系的操作 .................................. 错误!未定义书签。七.代码实现 ............................................................ 错误!未定义书签。 1.输入数据设计.................................................... 错误!未定义书签。 2.完成借阅、续借、归还的操作设计 ................... 错误!未定义书签。八.模式求精 ............................................................ 错误!未定义书签。九.小结.................................................................... 错误!未定义书签。

最新湖南大学数据结构第5次作业

1、画出对下列存储于数组中的值执行buildheap后得到的最大值堆: 10 5 12 3 2 1 8 7 9 4 先序遍历为12 10 4 1 2 9 5 8 3 7 中序遍历为1 4 2 10 5 9 12 3 8 7 2、假设某字母表各个字母的权如下: Q Z F M T S O E 2 3 10 10 10 15 20 30 (a)按照这个字母表,一个包含n个字母的字符串采用Huffman编码在最差情况下需要多少位?怎样的串会出现最差情况? 在最差的情况下需要5*n位,当所有的字母都是Q或者Z的时候。 (b)按照这个字母表,包含n个字母的字符串采用Huffman编码在最佳情况下需要多少位?怎样的串会出现最佳情况? 在最佳的情况下需要2*n位,当所有的字母都是E或者O的时候。 (c)按照一个字母表,一个字母平均需要多少位? (2*30 + 2*20 + 3*15 + 3*10 + 3*10 + 4*10 + 5*3+ 5*2)/100 =2.7 ∴ 2.7 3、编写一个算法来判断两棵树是否相同。尽可能提高算法效率,并分析算法的运行时间代价。 template bool Compare(GTNode* tree1, GTNode* tree2) { GTNode *num1, *num2; if (((tree1 == NULL) && (tree2 != NULL)) || ((tree2 == NULL) && (tree1 != NULL))) return 0; if ((t1 == NULL) && (t2 == NULL)) return 1; if (tree1->val() != tree2->val()) return 0; Num1 = tree1->left_child();

图书馆管理系统(SQL数据库)

摘要 在计算机日益普及的今天,对个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多。对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,往往是投入了大量的人力和财力却得不到高效的管理效率。为了便于图书资料的管理需要有效的图书管理软件,减轻工作人员的工作量,方便工作人员对它的操作,提高管理的质量和水平,做到高效、智能化管理,达到提高图书借阅信息管理效率的目的。采用数据库技术生成的图书馆借阅管理系统将会极大地方便借阅者并简化图书馆管理人员和工作人员的劳动,使工作人员从繁忙、复杂的工作进入到一个简单、高效的工作中 关键字:图书借阅;人员管理;图书维护。

目录 1.引言 (1) 2. 需求分析阶段 (2) 2.1 引言 (2) 2.2 需求分析阶段的目标与任务 (2) 2.2.1处理对象 (2) 2.2.2处理功能及要求 (3) 2.2.3.安全性和完整性要求 (3) 2.3 需求分析阶段成果 (3) 2.3.1 体会与收获 (3) 2.3.4 图书管理系统数据字典 (4) 3 概念设计阶段 (7) 3.1 引言 (7) 3.2 任务与目标 (7) 3.3 阶段结果 (8) 4.逻辑设计阶段 (9) 4.1逻辑设计的任务和目标 (9) 4.2数据组织 (10) 4.2.1将E-R图转换为关系模型 (10) 4.2.2模型优化 (11) 4.2.3数据库模式定义 (11) 5.物理设计阶段 (14) 6.数据库实施阶段 (14) 6.1建立数据库、数据表、视图、索引 (14) 6.1.1 建立数据库 (14) 6.1.2 建立数据表 (14) 6.1.3 建立视图 (16) 6.1.4 建立索引 (17) 6.2 应用举例 (17) 7.结束语 (21) 参考文献 (23)

高校图书馆管理系统数据库设计

图书管理系统数据库设计学号: 专业班级: 姓名: 指导老师: 完成日期:

摘要 在计算机日益普及的今天,对个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多。对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,往往是投入了大量的人力和财力却得不到高效的管理效率。为了便于图书资料的管理需要有效的图书管理软件,减轻工作人员的工作量,方便工作人员对它的操作,提高管理的质量和水平,做到高效、智能化管理,达到提高图书借阅信息管理效率的目的。采用数据库技术生成的图书馆借阅管理系统将会极大地方便借阅者并简化图书馆管理人员和工作人员的劳动,使工作人员从繁忙、复杂的工作进入到一个简单、高效的工作中。基于这个问题,开发了大学图书馆借阅系统。系统采用C/S模式,实现了借还书的方便、高效性、有效性和及时性。本文通过作者设计和开发一个中小型高校图书馆管理系统的实践,阐述了高校图书管理软件中所应具有的基本功能、设计、实现。 关键字:图书借阅;人员管理;图书维护;

目录 1.引言........................................................................ 2. 需求分析阶段............................................................... 2.1 引言 ................................................................... 2.2 需求分析阶段的目标与任务............................................... 2.2.1处理对象...................................................... 2.2.2处理功能及要求................................................ 安全性和完整性要求 ................................................. 2.3 需求分析阶段成果....................................................... 3 概念设计阶段................................................................ 3.1 引言 ................................................................... 3.2 任务与目标............................................................. 3.3 阶段结果............................................................... 4.逻辑设计阶段................................................................ 4.1逻辑设计的任务和目标.................................................... 4.2数据组织................................................................ 4.2.1将E-R图转换为关系模型............................................ 4.2.2模型优化.......................................................... 4.2.3数据库模式定义.................................................... 4.2.4用户子模式定义................................................... 4.3数据处理................................................................ 5.物理设计阶段................................................................ 5.1物理设计阶段的目标与任务................................................ 5.2数据存储方面............................................................ 5.3系统功能模块............................................................

2013年湖南大学866计算机综合研究生入学考试大纲

2013年计算机综合研究生入学考试大纲 Ⅰ考查目标 计算机学科专业基础综合考试涵盖数据结构、计算机组成原理、操作系统和计算机网络等学科专业基础课程。要求考生比较系统地掌握上述专业基础课程的基本概念、基本原理和基本方法,能够综合运用所学的基本原理和基本方法分析、判断和解决有关理论问题和实际问题。 Ⅱ考试形式和试卷结构 一、试卷满分及考试时间 本试卷满分为150分,考试时间为180分钟 二、答题方式 答题方式为闭卷、笔试 三、试卷内容结构 数据结构 45分 计算机组成原理 45分 操作系统 35分 计算机网络 25分 四、试卷题型结构 单项选择题70分(35小题,每小题2分) 综合应用题 80分 Ⅲ考查范围 数据结构 【考查目标】 1.掌握数据结构的基本概念、基本原理和基本方法。 2.掌握数据的逻辑结构、存储结构及基本操作的实现,了解各种典型数据结构的应用,能够对算法进行基本的时间复杂度与空间复杂度的分析。 3.能够选择并设计合适的数据结构及相应的算法对问题进行分析与求解,具备采用C或C++或 JAVA语言设计与实现算法的能力。 【考查内容】 一、数据结构与算法分析的基本概念 (一)数据结构的基本概念 (二)渐近算法分析方法

(三)时间复杂度 (四)空间复杂度 二、线性表、栈和队列 (一)线性表的定义和基本操作 (二)线性表的顺序存储结构和链式存储结构(三)线性表的应用 (四)栈和队列的基本概念和基本操作 (五)栈和队列的顺序存储结构和链式存储结构(六)栈和队列的应用 三、二叉树和树 (一)二叉树 1.二叉树的定义及其主要特征 2.二叉树的顺序存储结构和链式存储结构 3.二叉树的遍历 4.二叉排序(查找、检索)树 5.平衡的二叉排序(查找、检索)树- AVL树6.哈夫曼(Huffman)树和哈夫曼编码 (二)树 1.树的定义与术语 2.树的遍历 3.树的顺序存储结构和链式存储结构 四、图 (一)图的基本概念 (二)图的存储及基本操作 1.邻接矩阵法 2.邻接表法 (三)图的遍历 1.深度优先搜索 2.广度优先搜索 (四)图的应用 1.拓扑排序 2.关键路径 3.最短路径 4.最小(代价)生成树 五、查找

“图书馆首届电子资源检索大赛”试题

走进e时代—图书馆文化月 一、不定向选择题 1. CNKI(中国知网)的所用阅读器是什么?(C) A、Adobe Reader B、超越阅读器 C、CAJ浏览器 D、IE浏览器 2. 图书馆每年会举办哪些活动来提高学生对图书馆电子资源的认识?(D) A、《文献检索》课程 B、一小时讲座 C、新生入馆教育 D、图书馆文化周 3. 我校图书馆现有数据库中,哪些数据库提供了大量的试题供学生免费使用?(B) A、起点自主考试学习系统 B、维普VIPExam网络考试学习资源库系统 C、清华紫光"6+1"大学生能力提升数据库 D、银符考试模拟题库 4. 上课时,老师布置了作业,需要查找《科技与经济画报》这本期刊的资料,下列哪些数据库里收藏有这本期刊?(ABCD) A、中国期刊全文数据 B、万方数字化期刊 C、维普数据库D读秀学术搜索 5. 通过读秀学术搜索找到了《暮光之城》,想通过读秀文献传递获取原文,一本图书单次最多可以申请传递多少页?(B) A、40 B、50 C、60 D、70 6. 写毕业论文时,需要参考武汉船舶通信研究所的学位论文,可以通过下列哪些数据库获取?(ABCD) A.、CNKI中国优秀硕士学位论文全文数据库B、CNKI中国博士学位论文全文数据库C、万方数据中国学位论文全文数据库D、我校优秀学士学位论文全文数据库 7. 下列哪些数据库可以查询到《安娜·卡列尼娜》这本书的全文?(ABCD) A、中国数字图书馆 B、OFB外文文献库 C、EBSCO全文数据库 D、超星数字图书馆 8. 学习英语时,需要阅读一些中英文互译的文章,或者观看一些中英文双语的视频,下列哪些数据库提供这些资源?(ABCD) A、知识视界

数据库图书管理系统含代码

数据库图书管理系统含代 码 The following text is amended on 12 November 2020.

目录

一.需求描述和系统边界 数据库技术和Internet的飞速发展,使它们已经成为现代信息技术的重要组成部分,是现在计算机信息系统和计算机应用系统的基础和核心。对于任何一个企业来说,数据是企业重要的资产,如何有效利用这些数据,对于企业发展起着极其重要的作用。随着我国市场经济的迅速发展和人们生活水平的不断提高,图书馆藏书的数目逐渐增大,这也挑战了图书管理方面的技术,以前的人工管理方式已经不再适应现在的环境,取而代之的是先进的图书管理系统,创建图书管理系统可以让管理人员方便而快捷的进行管理、查询、借阅、录入等工作。 该图书管理系统支持2类用户:管理员和读者。读者可以进行借阅、续借、归还和查询书籍等操作,管理员可以完成书籍和读者的增加,删除和修改以及对读者,借阅、续借、归还的确认。 二.需求分析 1.业务需求 图书管理系统的主要业务包括:包括图书馆内书籍的信息,读者信息,以及借阅信息。此系统功能分为面向读者和面向管理员两部分,其中读者可以进行借阅、续借、归还和查询书籍等操作,管理员可以完成书籍和读者的增加,删除和修改以及对读者,借阅、续借、归还的确认。 2.功能需求及数据需求分析 (1)注册管理 管理员注册。管理员注册时要求填写基本信息,包括管理员编号、姓名、性别、联系电话、家庭住址。系统检查所有信息填写正确后管理员注册成功。 读者注册。读者注册时要求填写基本信息,包括读者编号、姓名、性别、联系电话、学院等。系统检查所有信息填写正确后读者注册成功。 (2)图书管理 增加图书信息。当有新的图书入库时,管理员负责添加图书信息,包括书名、分类、图书编号、作者、出版社、出版时间、简介等。

湖南大学数据结构试验图遍历问题

HUNAN UNIVERSITY 课程实习报告 题目:图的遍历问题 学生姓名刘乐 学生学号20080820208 专业班级通信工程2班 指导老师朱宁波 完成日期2010年5月17日 一、问题描述: 从图中某个顶点出发访问图中所有顶点,且使得每一顶点仅被访问一次,这个过程称为图的遍历。图的遍历是从图中某个顶点出发,沿着某条搜索路径对图中其余每个顶点进行访问, 并且使图中的每个顶点仅被访问一次的过程。 二、基本要求: 1、实现无向图的深度优先遍历和广度优先遍历。 2、分别输出每种遍历下的结点访问序列.从图中某个顶点出发,沿着某条搜索路径对图中每个顶点各做一次且仅做一次访问。它

是许多图的算法的基础。 三、实验主要模块构造思想: 深度优先搜索的过程 a 基本思想: 首先访问图中某一个指定的出发点Vi; 然后任选一个与顶点Vi相邻的未被访问过的顶点Vj; 以Vj为新的出发点继续进行深度优先搜索,直至图中所有顶点均被访问过。 b具体过程: 设x是当前被访问顶点,在对x做过访问标记后,选择一条从x出发的未检测过的边(x,y)。若发现顶点y已访问过,则重新选择另一条从x出发的未检测过的边,否则沿边(x,y)到达未曾访问过的y,对y访问并将其标记为已访问过;然后从y开始搜索,直到搜索完从y出发的所有路径,即访问完所有从y 出发可达的顶点之后,才回溯到顶点x,并且再选择一条从x出发的未检测过的边。上述过程直至从x出发的所有边都已检测过为止。此时,若x不是源点,则回溯到在x之前被访问过的顶点;否则图中所有和源点有路径相通的顶点(即从源点可达的所有顶点)都已被访问过,若图G是连通图,则遍历过程结束,否则继续选择一个尚未被访问的顶点作为新源点,进行新的搜索过程。 广度优先遍历(Breadth-First Traverse): 特点:尽可能先从指定的出发点,横向地访问图中各个顶点。 1.广度优先遍历的定义 在访问了起始点之后,首先依次访问起始点的各个邻接点,然后依次访问这些顶点中未被访问过的邻接点.依此类推,直到所有被访问到的顶点的邻接点都被访问过为止. 2. 广度优先搜索的过程 a算法基本思想: 首先访问图中某一指定的出发点Vi; 然后依次访问Vi的所有接点Vi1,Vi2…Vit; 再次访问Vi1,Vi2…,Vit的邻接点中未经访问过的顶点,依此类推,直到图中所有顶点均被访问为止。 b具体过程: 从广度优先搜索遍历方法可知,先被访问的顶点的邻接点也被访问,即假设顶点V在W之前被访问,那么顶点V的所有未经访问的邻接点也在顶点W的所有未经访问的邻接点之前被访问。这样可以在广度优先遍历的算法中设置一个队列结构,用以保存已访问过的顶点的序号,访问该顶点的所有未经访问的顶点。 广度优先搜索是一种分层的搜索过程,每向前走一步可能访问一批顶点,不像深度优先搜索那样会出现回退的现象。因此它不是个递归的过程。为了实现逐层访问,算法中使用了一个队列以记忆正在访问的这一层和上一层的顶点,以便于向下一层访问。为了避免重复访问,需要一个辅助函数visitvex[]给被

图书馆管理系统SQL数据库

图书馆管理系统S Q L 数据库 Document number【AA80KGB-AA98YT-AAT8CB-2A6UT-A18GG】

摘要 在计算机日益普及的今天,对个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多。对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,往往是投入了大量的人力和财力却得不到高效的管理效率。为了便于图书资料的管理需要有效的图书管理软件,减轻工作人员的工作量,方便工作人员对它的操作,提高管理的质量和水平,做到高效、智能化管理,达到提高图书借阅信息管理效率的目的。采用数据库技术生成的图书馆借阅管理系统将会极大地方便借阅者并简化图书馆管理人员和工作人员的劳动,使工作人员从繁忙、复杂的工作进入到一个简单、高效的工作中 关键字:图书借阅;人员管理;图书维护。 目录

1.引言 随着社会信息量的与日俱增,职场竞争的日趋激烈,越来越多的人更关注知识的积累、能力的培养。作为信息存储的主要媒体之一图书,数量、规模比以往任何时候都大的多,不论个人还是图书管理部门都需要使用方便而有效的方式来管理自己的书籍。 在计算机日益普及的今天,对个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多。对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,为了便于图书资料的管理需要有效的图书管理软件。对于日益扩大的图书馆,查找特定的书目总是借阅者或工作人员劳神费力,有时还没有结果。因此往往是投入了大量的人力和财力却得不到高效的管理效率。为了缩短借阅者的等待时间,减轻工作人员的工作量,方便工作人员对它的操作,提高管理的质量和水平,做到高效、智能化管理,从而达到提高图书借阅信息管理效率的目的,采用数据库技术生成的图书馆借阅管理系统将会极大地方便借阅者并简化图书馆管理人员和工作人员的劳动,使工作人员从繁忙、复杂的工作进入到一个简单、高效的工作中。 本文以高校图书馆管理系统管理系统开发过程为背景,全文分为目录、需求分析、概要设计、逻辑设计、物理设计,以及系统的实现等全过程。在程序设计与调试上采用了自上而下,逐步细化,逐步完善的原则。采用结构化的功能模块设计系统功能,可读性好,易于扩充。基本功能全面,系统可读性好,易于维护、更新,安全性好。 2. 需求分析阶段 2.1 引言 进行系统设计,首先要对系统的现状进行分析。根据系统的目标、需求和功能,制定和选择一个较好的系统方案,从而达到一个合理的优化系统。每个学校都有图书馆,最初由于图书数量和种类较少,人工手动管理比较方便和灵活。随着社会的发展,图书的数量和种类越来越多,人工手动管理会降低工作的效率,希望建立一个图书管理系统,是为了解决人工手动管理图书信息在实践的问题,从而达到系统化、规范化、标准化的水平。该系统的建立不但给管理者带来了方便,也节省了工作时间从而提高了工作效率。 需求分析是在于要弄清用户对开发的数据库应用系统的确切要求。数据库设计的第一步是明确数据库的目的和如何使用,也就是说需要从数据库中得到哪些信息。明确目的之后,就可以确定您需要保存哪些主题的信息(表),以及每个主题需要保存哪些信息(表中字段)。

图书管理系统大数据库

《数据库原理与应用教程》实验报告 数据库分析与设计 ------图书管理系统

一、需求说明 要实现一个简化的图书管理系统,在此图书管理系统中只涉及学生信息、借阅信息和管理者信息的管理。此系统要求能够记住书籍的基本信息、学生的信息和管理者的信息。该系统的业务要求为: ◆一名学生可以在不同的日期多次借阅同一本书。 ◆一名学生可以同时借阅多本不同的图书。 ◆一本书可以在不同的时间借给不同的学生。 ◆一名学生不能在同一天对同一本书借阅多次。 ◆一名管理员可以同时管理多本图书。 该系统的基本信息包括: ◆学生信息:姓名,学号,学院,专业,年级。 ◆图书信息:图书名称,图书编号,出版社名称,出版日期,作者,是否可借。 ◆管理员信息:管理员姓名,管理员编号。 除上述要求外,该系统还需产生如下报表: ◆学生借阅图书信息表:学号,图书编号,图书名称,借阅日期,应归还日期。 ◆图书管理表:管理日期,管理员编号,管理员姓名。 二、数据库结构设计 2.1 概念结构设计 概念结构设计是根据需求分析的结果产生概念结构设计的E-R模型。由于这个系统比较简单,因此这里采用自顶向下的设计方法。自顶向下设计的关键是首先要确定系统的核心活动。所谓核心活动就是系统中的其他活动都要围绕这个活动展开或与此活动密切相关。确定了核心活动之后,系统就有了可扩展的余地。对于这个图书管理系统,其核心活动是图书,学生与图书之间是通过学生借阅图书发生联系的,管理员与图书之间是通过管理员管理图书发生联系的。至此,此系统包含的实体有: ◆图书:用于描述课程的基本信息,用图书编号标识。 ◆学生:用于描述学生的基本信息,用学号标识。 ◆管理员:用于描述管理员的基本信息,用管理员编号标识。 由于一名学生可以借阅多本图书,并且一本书可以在不同时间借给不同的学

图书馆管理系统数据库设计

图书馆管理系统数据库设计 1、系统简要分析 1.1图书资料基本管理 (1)、新书编号、登记、入库:将新购入的书籍按照国家统一的分类编号;登记书号、书名、作者、出版社等基本信息,将新购图书入库。 (2)、检索查询:按照各种组合条件对书库图书进行查询,也可以进行模糊查询。 (3)、图书资料统计:根据要求对图书总数、各类图书数以及图书单价合计统计,打印日常报表。 (4)、旧书出库处理:通过查询确定过期期刊杂志、旧书籍以及由于丢失等其他原因需要从书库中撤销的图书资料,并从书库中撤除。 1.2图书资料借阅管理 (1)、借还书管理:主要负责日常的借书登记、还书登记,和逾期未还图书的催还工作。 (2)、检索查询:按照各种组合条件对图书借阅情况查询,也可以进行模糊查询。 (3)、借书统计:统计各类书借阅情况,借阅次数;统计个人借书情况,打印日常报表。 (4)、定期整理图书借阅信息:将还书情况总结整理后彻底删除。 此外,图书管理人员还要定期做整理图书资料的全部图书清单、分类印图书清单、借阅清单以及整理填写各种报表等工作。 2、业务流程分析 2.1 借书业务流程

2.2 新书购进入库业务流程 2. 3 还书业务流程

3、数据流程图 符号说明: 实体 处理逻辑 数据流 数据存储 3. 1 系统的总数据流程图

3.2 借书处理数据流程图 3.3 还书处理数据流程图

3.4 购书处理数据流程图 4、数据字典 4.1 数据项的描述 《补充各数据项的描述》 数据项名:学号 数据项含义说明:学生的唯一编号 别名: 数据类型:字符型 长度:10 取值范围:‘0000000000’-‘9999999999’ 取值说明:第1位为校区代码,2-3位为入学年份,。。。。。。与其他数据项的关系 4.2 数据流的描述

图书馆管理系统数据库设计说明

图书馆管理系统数据库设计 一、需求分析 图书馆管理系统应该能够提供所有借阅者的详细信息,以及馆库存的详细情况,对借书和还书两大功能进行合理的操作并登记。图书馆管理系统的主要任务是建立详尽的借阅信息,以及馆的书种及对应书刊的记录,并对借阅者和其借阅的书籍进行登记。在不同的图书馆之间,图书管理系统会存在一定的差异。 1.1具体功能模块及描述 1、安全性管理:给每个管理员一个用户名和密码,以登录图书馆管理系统,便于身份验证, 管理员可以拥有最高权限对数据库进行所有操作。同样拥有一个用户名和密码,但普通用户只能进行查询操作,看个人信息和图书馆中图书信息不可修改它们。 (1)管理员:增加、删除、查询、修改图书信息; 增加、删除、查询、修改读者信息; 图书借出、图书归还、逾期还书处理、图书注销 (2)读者:查询图书信息、查看借书情况、查询个人信息、历史借书情况、超期还书警告。 2、读者信息管理:该功能模块用于管理相关的读者信息,包括的子功能模块如下图所示 图1—1 读者信息功能模块 “读者类型”用于设置读者的类型及相关的信息,容包括读者的身份、可借册数,可续借次数等。“读者档案管理”用于设置读者相关的信息,容包括编号、、身份、读者性别、联系方式、登记日期、有效期至、违规次数、现借图书数、是否挂失。“借书证挂失与恢复”用于挂失和恢复读者的借书证,

挂失后该编号的读者不能再借书。 3、图书管理:该功能模块用于管理图书相关的信息包含的功能模块如下图所示 图1—2 “图书管理”功能模块 “图书基本信息设置”用于设置图书的类型及相关的信息,容包括ISBN、书名、版次、类型、作者、、价格、现存量、库存总量。“图书档案管理”用于设置图书相关信息,容包括编号、ISBN、入库时间。“图书征订”用于订购新图书,容包括征订编号、ISBN、订购数量、订购日期。“图书注销”用于注销图书,被注销的图书不可以再借出,并且应将图书信息进行修改。“图书查看”用于查看某本书的情况。“图书盘点”输出图书的在库清单供盘点使用。 4、图书流通管理:此功能模块用于管理图书流通环节的相关的操作,包括如下图所示的功能模块。

湖南大学(866)数据结构模拟题

湖南大学《数据结构》2016年考研模拟试题 第一套 一、选择题(每小题1分,共10分) 1、在一个长度为n的顺序表的任一位置插入一个新元素的渐进时间复杂度为( )。 A、O(n) B、O(n/2) C、O(1) D、O(n2) 2、带头结点的单链表first为空的判定条件是:( ) A、first==NULL B、first一>1ink==NULL C、first一>link==first D、first!=NUlL 3、当利用大小为n的数组顺序存储一个队列时,该队列的最大长度为( )。 A、n一2 B、n—l C、n D、n+1 4、在系统实现递归调用时需利用递归工作记录保存实际参数的值。在传值参数情形,需为对应形式参数分配空间,以存放实际参数的副本;在引用参数情形,需保存实际参数的( ),在被调用程序中可直接操纵实际参数。 A、空间 B、副本 C、返回地址 D、地址 5、在一棵树中,( )没有前驱结点。 A、分支结点 D、叶结点C、树根结点 D、空结点 6、在一棵二叉树的二叉链表中,空指针域数等于非空指针域数加( )。 A、2 B、1 C、0 D、一1 7、对于长度为9的有序顺序表,若采用折半搜索,在等概率情况下搜索成功的平均搜索长度为( )的值除以9。 A、20 B、18 C、25 D、22

8、在有向图中每个顶点的度等于该顶点的( )。 A、入度 B、出度 C、入度与出度之和 D、入度与出度之差 9、在基于排序码比较的排序算法中,( )算法的最坏情况下的时间复杂度不高于O(n10g2n)。 A、起泡排序 B、希尔排序 C、归并排序 D、快速排序 10、当α的值较小时,散列存储通常比其他存储方式具有( )的查找速度。 A、较慢 B、较快 C、相同 二、填空题(每小题1分,共10分) 11、二维数组是一种非线性结构,其中的每一个数组元素最多有个直接前驱(或直接后继)。 12、将一个n阶三对角矩阵A的三条对角线上的元素按行压缩存放于一个一维数组B中,A[0][0]存放于B[0]中。对于任意给定数组元素B[K],它应是A中第行的元素。 13、链表对于数据元素的插入和删除不需移动结点,只需改变相关结点的 域的值 14、在一个链式栈中,若栈顶指针等于NULL则为。 15、主程序第一次调用递归函数被称为外部调用,递归函数自己调用自己被称为内部调用,它们都需要利用栈保存调用后的地址。 16、在一棵树中,结点没有后继结点。 17、一棵树的广义表表示为a((c,d(e,f),g(h)),i(j,k(x,y))),结点f 的层数为。假定根结点的层数为0。 18、在一棵AVL树(高度平衡的二叉搜索树)中,每个结点的左子树高度与右子树高度之差的绝对值不超过。 19、n(n>0)个顶点的无向图最多有条边,最少有条边。 20、在索引存储中,若一个索引项对应数据对象表中的一个表项(记录),则称此索引为索引,若对应数据对象表中的若干个表项,则称此索引为 索引。 三、判断题(每小题1分,共10分)

相关主题
文本预览
相关文档 最新文档