链表定义以及实现(遍历,节点计数,插入节点)--1(面向对象的方法实现)
2017-10-11 14:53
387 查看
class Node(object):
def __init__(self,data,next=None):
self.data=data
self.next=next
class Node_l(object):
def __init__(self):
self.head=None
def head_insert(self,data):
node=Node(data)
'''if self.head==None:
self.head=node
else:'''
node.next=self.head
self.head=node
def tail_insert(self,data):
node=Node(data)
if self.head==None:
self.head=node
else:
cur=self.head
while cur.next!=None:
cur=cur.next
cur.next=node
def travel(self):
if self.head ==None:
return ' '
cur=self.head
while cur!=None:
print cur.data
cur=cur.next
return ' '
node=Node_l()
print node.travel()
node.head_insert(3)
node.head_insert(4)
node.tail_insert(5)
node.tail_insert(6)
node.tail_insert(7)
print node.travel()
def __init__(self,data,next=None):
self.data=data
self.next=next
class Node_l(object):
def __init__(self):
self.head=None
def head_insert(self,data):
node=Node(data)
'''if self.head==None:
self.head=node
else:'''
node.next=self.head
self.head=node
def tail_insert(self,data):
node=Node(data)
if self.head==None:
self.head=node
else:
cur=self.head
while cur.next!=None:
cur=cur.next
cur.next=node
def travel(self):
if self.head ==None:
return ' '
cur=self.head
while cur!=None:
print cur.data
cur=cur.next
return ' '
node=Node_l()
print node.travel()
node.head_insert(3)
node.head_insert(4)
node.tail_insert(5)
node.tail_insert(6)
node.tail_insert(7)
print node.travel()
相关文章推荐
- PHP实现双链表删除与插入节点的方法示例
- python实现二叉树以及二叉树的遍历--1(面向对象的方法实现)
- 设计一个整型链表类list,能够实现链表节点的插入、删除、以及链表数据的输出操作。
- java实现创建链表以及插入节点,查找结点,删除节点等操作
- 链表指针新理解以及插入里链表节点新方法
- Flex中的CSS: (9)可继承/不可继承样式的定义 以及Flex中的实现方法
- C语言实现双向链表删除节点、插入节点、双向输出等操作
- 【数据结构】C语言实现链表节点的插入和删除
- malloc的链表,创建链表,遍历链表,插入节点,删除节点
- 数据表中遍历寻找子节点的三种实现方法
- 建立一个带附加头结点的单链表.实现测长/打印/删除结点/插入结点/逆置/查找中间节点/查找倒数第k个节点/判断是否有环
- 用结构体实现链表的创建、遍历、结点插入、结点删除、链表删除-----带菜单选项
- 编程实现单链表和双链表的插入节点
- C语言之----面向对象的方法实现链表的操作
- C实现简单单向链表,一次遍历查找倒数第k个节点的值
- C语言实现双向链表删除节点、插入节点、双向输出等操作
- 完全二叉树的JAVA实现(以及非递归遍历方法)
- 实现一个 链表 有序插入新节点
- 数据结构-用链表函数实现链表节点的插入
- Java数据结构之简单链表的定义与实现方法示例