数据结构

位置:IT落伍者 >> 数据结构 >> 浏览文章

数据结构 3.1 单链表中存取元素示例算法


发布日期:2018年09月22日
 
数据结构 3.1 单链表中存取元素示例算法

希赛教育计算机专业考研专业课辅导招生

希赛教育计算机专业考研专业课辅导视频

希赛教育计算机考研专业课在线测试系统

bool GetElem ( SLink L int pos ElemType &e )

{

// 若≤pos≤LengthList(L)则用 e 带回指针L指向头结点的单链表中第pos个元素的值且返回函数值为TRUE否则返回函数值为FALSE

p = L>next; j =;// 变量初始化p 指向第一个结点

while ( p && j< pos )

{// 顺结点的指针向后查找直至 p 指到第pos个结点或 p 为空止

p = p>next; ++j;

}//while

if ( !p || j>pos ) return FALSE; //链表中不存在第 pos 个结点

e = p>data;//取到第 pos 个元素

return TRUE;

}//GetElem

算法的时间复杂度为O(ListLength(L))

可见算法中应设一个指针变量p和一个整数变量 j并使 p 和 j 同步变化始终保持指针 p 指向第j的结点的状态

上一篇:数据结构 5.9 数组中以列为主的存储结构

下一篇:数据结构之顺序队列