【数据结构】2-3-3单链表的查找
数据结构知识点合集
- 知识点
|
- 单链表的按位查找
GetElem(L,i):按位查找操作。获取表L中第i个位置的元素的值。
|
/*查找L中的第i个节点并返回*/ LNode *GetElm(LinkList L,int i) { /*位置不合法返回NULL*/ if(i<0) return NULL; /*p指向当前节点*/ LNode *p; p=L; int j=0; /*循环找到第i个节点并返回*/ while(p!=NULL && j<i) { p=p->next; j++; } return p; } |
- 单链表的按值查找
LocateElem(L,e):按值查找操作。在表L中查找具有给定关键字值的元素。
/*在链表L中查找到值为e的节点并返回*/ LNode * LocateElem(LinkList L,ElemType e) { /*从链表的的一个节点开始查找*/ LNode *p = L->next; /*循环朝找到值为e的节点*/ while(p!=NULL && p->data != e) p = p->next; /*返回查找到的节点*/ return p; } |
- 求表的长度
/*求链表L的长度*/ int Length(LinkList L) { int len = 0; /*循环遍历链表*/ LNode *p = L; while(p->next != NULL) { p = p->next; len++; } return len; } |