编写算法,实现线性表查找locateElem(L,e),返回元素e在线性表中的位置序号,查找失败返回0。(线性表采用链式存储结构)
时间: 2024-12-02 18:14:03 浏览: 1
编写线性表查找(locateElem)算法,对于采用链式存储结构的线性表,你可以按照以下步骤实现:
1. 首先,创建一个函数`locateElem`,接受两个参数:链表头节点`head`和要查找的元素`e`。
```python
def locateElem(head, e):
```
2. 初始化一个变量`position`为0,这个变量将记录当前元素的位置序号。
3. 使用一个`while`循环,当头节点不为空并且指向的元素与目标元素相等时,更新位置并跳出循环;否则,遍历链表,直到找到目标元素或遍历结束。
```python
position += 1
while head and head.data != e:
head = head.next
if not head:
break
```
4. 循环结束后,如果找到了目标元素,则返回位置序号`position`;如果没有找到,返回0表示查找失败。
```python
return position if head else 0
```
完整的伪代码如下:
```plaintext
function locateElem(L, e)
position := 0
current := L.head
while current is not null and current.data ≠ e
position := position + 1
current := current.next
return position if current is not null else 0
```
阅读全文