【数据结构】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;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值