python链表所有操作详解

本文详细介绍了Python链表的各种操作,包括插入(append、extend、insert)、删除(remove)、索引(pop、index)、统计(count)、序列操作(sort、reverse)、函数化操作(filter、map、reduce)以及作为堆栈和队列的使用方式。

一.插入操作

1.append操作
把一个元素添加到链表的结尾

a=[1,3,5,4,8,7]
a.append(9)
[1, 3, 5, 4, 8, 7, 9, 9]

2.extend操作
就是合并链表的操作

a=[1,3,5,4,8,7]
b=[5,6,8]
a.extend(b)
[1, 3, 5, 4, 8, 7, 9, 9, 5, 6, 8]

3.insert操作
就是元素插入指定位置
insert(i,x)把x插入到i位置

a=[1,3,5,4,8,7]
a.insert(1,6)
[1, 6, 3, 5, 4, 8, 7]

二.删除操作

4.remove操作
删除链表中为第一个为x的值

a=[1,3,5,4,8,7]
a.remove(5)
[1, 3, 4, 8, 7]

三.索引操作

5.pop操作
从链表指定位置删除元素,并将其返回,如果没有指定就返回最后一个元素,元素也会在链表中删除
pop(i)

a=[1,3,5,4,8,7]
a.pop(2)
[1, 3, 4, 8, 7]
a.pop()
7

6.index操作
返回链表中第一个值为x的索引
index(x)

a=[1,3,5,4,8,7]
a.index(5)
2

四.统计操作

7.count操作
返回链表中x出现的次数
count(x)

a=[1,3,5,4,8,7,3,5,3,3]
a.count(3)
4

五.序列操作

8.sort操作
就是排序

a=[1,3,5,4,8,7,3,5,3,3]
a.sort()
[1, 3, 3, 3, 3, 4, 5, 5, 7, 8]

9.reserve操作
链表反转操作

a.reverse()
[8, 7, 5, 5, 4, 3, 3, 3, 3, 1]

六.函数化操作

10.filter操作
返回一个sequence序列,其中包括序列中所有调用function后返回为true的元素

def f(x): return x%2!=0 and x%3!=0
filter(f,range(2,25)
[5,7,11,13,17,19,23]

11.map操作
map(function,sequence)为每一个元素调用function(item)并将返回值以链表返回

seq=range(8)
def add(x,y): return x+y
map(add,seq)
[0,2,4,6,10,12,14]

12.reduce操作
返回一个单值,首先以序列的前两个元素调用函数再与下一个参数就行函数调用一直执行下去
reduce(function,sequence)

def add(x,y): return x+y
reduce(add,range(1,11))
55

七.当作堆栈或者链表使用

使用过C++的都知道,
当作堆栈用时配合append和pop完成先进后出的操作。
当作队列用时配合append和pop(0)完成先进先出操作

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值