三九宝宝网宝宝教育教学论文

问一道数据结构题严蔚敏 c语言版函数GetElem在单链表中的实现

02月23日 编辑 39baobao.com

[c语言和数据结构]没有直接关系。 1、数据结构 数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带...+阅读

文字有点长,但都是我一个一个打出来的,希望你能认真看完!

调用的GetElem函数的参数有链表L、要查找元素的位置i和存储查找结果的变量e

函数开始先把链表头节点的next节点指针拷贝给节点指针p,将p作为循环变量

while (p & j

然后指针p不断地把自身的next域拷贝给自己,从而能够遍历整个链表,而且j也不断自增直至到达i的位置

由于while的循环条件有两个,所以在退出循环后,要检查一下是因为哪个条件不满足才退出的

所以用if ( !p || j>i )判断,如果刚开始p的值为空(即!p),或所给的位置i

执行if里的语句,直接返回错误(return ERROR),程序到此就会结束

如果没有结束,则说明不是因为上述两种原因(即正常循环结束),这时p的数据域(p->data)就是要查找的数据,正常结束函数调用

希望回答对你有帮助!谢谢

【原创答人】

以下为关联文档:

数据结构c语言这个问题的算法要考虑周全,程序倒不复杂。以四节火车为例, 1,首先考虑四节火车进站的可能顺序有4!=24种可能。 2,出站时机有2^3=8种可能(以大写字母表入站,小写字母表出站): 出站发...

数据结构问题????数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率的算...

c语言数据结构中结构体定义问题编译器逐行解析,在定义next之前,编译器已经知道struct student这个结构类型的存在,所以可以用它来定义next。 next是指向struct student结构的指针类型。一般像这种用法,都是用...

c语言版数据结构#include #include struct chain { int value; struct chain *next; }; struct chain *create() { struct chain *head,*tail,*p; int x; head = tail = NULL; while(scanf(...

小学语文4年级上册人教24课给予是快乐的问一道与这一课有关的一、教材解读1.课文简说。这是一篇略读课文。课文讲述了圣诞节前夜,保罗偶然结识了一个生活贫困的小男孩,在短暂的相处中,小男孩的言行强烈地震撼了保罗的心灵,使他深深体会到“...

问大家一道语文题原文译文 楚国有个以养猕猴为生的人,楚国人叫他"狙公".每天早上,他一定在庭院中分派猕猴工作,叫老猴率领着小猴子上山去,摘取草木的果实,赋收十分之一来奉养自己.有的猴子数量不足,...

数据结构课设总结我正好在做课设,我把我的总结给你。 数据结构是计算机程序设计的重要理论技术基础,它不仅是计算机科学的核心课程,而且也已经成为其他理工专业的热门选修课。随着高级语言的发...

一道C语言试题理解复杂的声明语法的规则说起来很简单, 就是从变量名(或者更泛一点,自定义的标识符)开始, 先右后左,遇到括号就反向——向右时遇到右括号")"反向, 向左时遇到左括号"("就反向——一个一...

关于严蔚敏C语言版数据结构的栈PUSH实现代码ElemType是否是笔误? 这个应该是笔误。。 另外对于追加那个,顺序栈是需要连续地址的内存,打个比方,比如原来栈的容量是从内存地址2000到2100这段空间,现在不够用了,需要增加100,也...

推荐阅读
图文推荐