首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
[说明] 已知包含头节点(不存储元素)的单链表的元素已经按照非递减方式排序,函数compress(NODE *head)的功能是去掉其中重复的元素,使得链表中的元素互不相同。 处理过程中,当元素重复出现时,保留元素第一次出现所在的节点。
[说明] 已知包含头节点(不存储元素)的单链表的元素已经按照非递减方式排序,函数compress(NODE *head)的功能是去掉其中重复的元素,使得链表中的元素互不相同。 处理过程中,当元素重复出现时,保留元素第一次出现所在的节点。
admin
2012-04-11
71
问题
[说明]
已知包含头节点(不存储元素)的单链表的元素已经按照非递减方式排序,函数compress(NODE *head)的功能是去掉其中重复的元素,使得链表中的元素互不相同。
处理过程中,当元素重复出现时,保留元素第一次出现所在的节点。
图8-29(a)、(b)是经函数compress( )处理前后的链表结构示例图。
链表的节点类型定义如下:
typedef struct Node {
int data;
struct Node *next;
}NODE;
[C语言函数]
void compress(NODE *head)
{
NODE *ptr, *q;
ptr= (1) ; /*取得第一个元素节点的指针*/
while( (2) && ptr->next) {
q=ptr ->next;
while(q && (3) ){/*处理重复元素*/
(4) =q ->next;
free(q);
q=ptr->next;
}
(5) =ptr->next;
} /*end of while*/
} /*end of compress*/
选项
答案
head>next ptr ptr->data==q->data或其等价形式 ptr->next ptr
解析
本题考查的是对链表的查找、插入和删除等运算。要找到重复的元素并将其删除而使各元素互不相同。我们可以顺序遍历链表,比较逻辑上相邻的两个元素是否相同,如果相同则删除后一个元素,以此类推。代码如下:
VOid Compress(NODE *head)
{
NODE *ptr, *q;
ptr=head->next; /*取得第一个元素节点的指针*/
while(ptr && ptr->next) {
q=ptr->next;
while(q && ptr->data==q>data) { /*处理重复元素*/
ptr->next=q->next;
free(q);
q=ptr->next;
}
ptr=ptr->next;
} /*end of while*/
} /*end of compress*/
转载请注明原文地址:https://kaotiyun.com/show/UEVZ777K
本试题收录于:
程序员上午基础知识考试题库软考初级分类
0
程序员上午基础知识考试
软考初级
相关试题推荐
下列操作中,能在各种中文输入法及英文输入之间切换的是(45)。
避免死锁的一个著名的算法是(15)。
某工作站无法访问域名为www.test.com Web服务器,此时使用ping命令对该服务器的IP地址进行测试,发现响应正常。但是对服务器域名进行测试时出现“Request timed out”信息。由此可初步判定出现该问题的原因是(67)。
在Word的编辑状态,不能完成删除整个表格(及其内容)任务的操作是(14)。
存储一个16×16点阵的汉字(每个点占用1bit),需用(6)个字节。
某校园网内VLAN 2的网关地址设置为137.229.16.1,子网掩码设置为255.255.240.0,则IP地址(28)不属于该VLAN。该VLAN最多可以配置(29)台主机。
(43)技术是在主存中同时存放若干个程序,并使这些程序列交替执行,以提高系统资源的利用率。
以下给出的地址中,属于子网197.182.15.19/28的主机地址是(30)。
下列计算机外部总线中,支持即插即用,数据传输速率最快的总线是(9)。
假设某计算机有1MB的内存,并按字节编址,为了能存取其中的内容,其地址寄存器至少需要(9)位。为使4字节组成的字能从存储器中一次读出,要求存放在存储器中的字边界对齐,一个字的地址码应(10)。若存储周期为200ns,且每个周期访问4B,则该存储器的带宽为(
随机试题
塑化治疗技术中的要求是
该患者应诊断为该患者的缺铁原发表现为
治疗痿证、瘫痪宜选用的电针波型是
宏达建筑材料有限公司(以下简称宏达公司)是国有企业,该公司成立之初,全部资产为860万元。公司成立后,在激烈的市场竞争中,经营决策屡屡失误,加之公司内部管理混乱,至2009年公司即负债280万元,2010年负债620万元,2011年负债1200万元,201
交易标准化协议达成后,在未来某一特定时间,如几周、几个月之后才办理交割的交易是()。
由已知关系式f[xg(y),y]=x+g(y)两边对x求二次偏导,有[*]
以太网物理地址的长度是______。
若有以下程序:#include<stdio.h>main(){inta=6,b=0,c=0;for(;a;){b+=a;a一=++c;)printf("%d,%d,%d\n",a,b,c);}
You’dbetter_________thewateruntilithasbeenboiled.
Lifeisdifficult.Itisagreattruthbecauseoncewetrulyunderstandandacceptit,thenlifeisnolongerdifficult.
最新回复
(
0
)