数据流图如图1-10(住宅安全系统第0层DFD图)所示中的数据存储“配置信息”会影响图中的哪些加工?
数据流图如图1-10(住宅安全系统第0层DFD图)所示中的数据存储“配置信息”会影响图中的哪些加工?
数据流图如图1-10(住宅安全系统第0层DFD图)所示中的数据存储“配置信息”会影响图中的哪些加工?
【说明】
函数DeleteNode (Bitree *r, int e)的功能是:在树根结点指针为r的二叉查找(排序)树上删除键值为e的结点,若删除成功,则函数返回0,否则函数返回-1。二叉查找树结点的类型定义为:
typedef struct Tnode{
int data; /*结点的键值*/
struct Tnode *Lchild, *Rchild; /*指向左、右子树的指针*/
}*Bitree:
在二叉查找树上删除一个结点时,要考虑3种情况:
①若待删除的结点p是叶子结点,则直接删除该结点;
②若待删除的结点p只有一个子结点,则将这个子结点与待删除结点的父结点直接连接,然后删除结点p;
③若待删除的结点p有两个子结点,则在其左子树上,用中序遍历寻找关键值最大的结点s,用结点s的值代替结点p的值,然后删除结点s,结点s必属于上述①、②情况之一。
【函数】
int DeleteNode (Bitree *r,int e) {
Bitree p=*r,pp,s,c;
while ((1) ){ /*从树根结点出发查找键值为e的结点*/
pp=p;
if(e<p->data) p=p->Lchild;
else p=p->Rchild;
}
if(!P) return-1; /*查找失败*/
if(p->Lchild && p->Rchild) {/*处理情况③*/
s=(2);pp=p
while (3) {pp=s;s=s->Rchild;}
p->data=s->data; p=s;
}
/*处理情况①、②*/
if ((4) ) c=p->Lchild;
else c=p->Rchild;
if(p==*r) *r=c;
else if ((5) ) pp->Lchild=c;
else pp->Rchild=c;
free (p);
return 0;
}
[说明] 编写一个函数根据用户输入的偶对(以输入。表示结束)建立其有向图的邻接表。一个图的邻接表存储结构定义如下:
include < stdio. h >
define MAXVEX 30
struct edgenode
{
int adjvex;
char info;
struct edgenode * next;
}
struct vexnode
{
char data;
struct edgenode * link;
}
typedef struct vexnode adjlist [MAXVEX];
实现要求的函数如下:
void creatadjlist (adjlist g)
{
int i, j, k;
street vexnode * s;
for(k=1; k< =n; k+ +)
{
(1)
g [k]. link = NULL;
}
printf (“输一个对:” );
scanf ("%d, %d", &i, &j);
while (2)
{
(3)
s- >adjvex =j;
(4)
g [i].link =s;
(5)
}
}
A.www服务采用的主要传输协议是http
B.www服务以超文本方式组织网络多媒体信息
C.用户访问web服务器可以使用统一的图形用户界面
D.用户访问web服务器不需要知道服务器的url地址
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!