python 单链表查找元素_如何在python中一次找到链表的中间元素?
我合并了所有的方法,为您创建,查找和打印。class Node(object):
def __init__(self, data=None, next=None):
self.data = data
self.next = next
def __str__(self):
return str(self.data)
def create_linked_list(n):
"""Creating linked list for the given
size"""
linked_list = Node(1)
head = linked_list
for i in range(2, n):
head.next = Node(i)
head = head.next
return linked_list
def print_linked_list(node):
"""To print the linked list in forward"""
while node:
print '[',node,']','[ref] ->',
node = node.next
print '-> None'
def find_middle1(node):
tick = False
half = node
while node:
node = node.next
if tick:
half = half.next
tick = not tick
return "Middle node is %s" % str(half)
def find_middle2(node):
list = []
while node:
list.append(node)
node = node.next
return "Middle node is %s" % str(list[len(list)/2])
node = create_linked_list(10)
print_linked_list(node)
print find_middle1(node)
print find_middle2(node)
输出:[ 1 ] [ref] -> [ 2 ] [ref] -> [ 3 ] [ref] -> [ 4 ] [ref] -> [ 5 ] [ref] -> [ 6 ] [ref] -> [ 7 ] [ref] -> [ 8 ] [ref] -> [ 9 ] [ref] -> -> None
Middle node is 5
Middle node is 5
python 单链表查找元素_如何在python中一次找到链表的中间元素?相关推荐
- java 查找链表中间元素_如何在Java中一次性查找Java中链表的中间元素
如何在一次传递中找到LinkedList的中间元素?这是一个 Java 和非Java程序员面试时经常被问到的编程问题.这个问题类似于检查回文或计算阶乘,有时也会要求编写代码.为了回答这个问题,候选人必 ...
- python实现随机抽取答题_如何在python中实现随机选择
这篇文章主要介绍了如何在python中实现随机选择,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 想从一个序列中随机抽取若干元素,或者想生成几个随机 ...
- python二进制转八进制代码_如何在python中输入二进制、八进制、十进制、十六进制数据并转换...
最近在学习python,不过跟着课本的作业题目: 分别就计算二进制110110011.八进制256和十六进制的数字a4b5,并转化为十进制求和. 不过写过程中遇到了个问题: 如何在python中输入二 ...
- python怎么去掉换行符_如何在Python中删除尾部换行符?
如何在Python中删除尾部换行符? 什么是Perl的chomp函数的Python等价物,如果它是换行符,它会删除字符串的最后一个字符? 26个解决方案 1473 votes 尝试方法lstrip() ...
- python词云自定义形状_如何在Python中生成任何形状的词云
作者 | Julia Kho 编辑| 代码医生团队 在本文中,我们将探讨如何在python中以您想要的任何形状生成文字云.我们将通过一个示例来说明如何在房屋的自定义形状中创建简单的文字云,如上图所示. ...
- python 参数个数 同名函数_如何在python中编写不同参数的同名方法
我在Java背景下学习Python(3.x). 我有一个python程序,我在其中创建一个personObject并将其添加到列表中.p = Person("John") list ...
- python二维数组初始化_如何在Python中初始化二维数组?
这种方式比嵌套列表推导更快[x[:] for x in [[foo] * 10] * 10] # for immutable foo! 这里有一些python3时序,适用于小型和大型列表$python ...
- python 两个列表比较_如何在Python中比较两个列表
python 两个列表比较 In this article, we will understand the different ways to compare two lists in Python. ...
- jquery 获取同级元素_如何在jQuery中获取元素的同级
jquery 获取同级元素 In this post, we will discuss how to get the siblings of an HTML element in jQuery. jQ ...
- linux按目录名查找目录_如何在Linux中查找目录?
linux按目录名查找目录 Linux provides different ways to find directories. Here we will look at how to find di ...
最新文章
- 如何零基础学习python语言_零基础如何入门Python语言?有哪些学习建议?
- 实战:一次失败的WEB攻击试验,欢迎高手补充
- linux sed给空文件首行插入_Sed命令高级功能,学好了工作不愁
- 数据库安全性相关知识笔记​
- 谁是ASML的最大股东?为何荷兰光刻巨头要听美国的话?
- c语言程序设计电加热炉,基于80C52单片机的电加热数字恒温控制系统设计
- 矩阵加法(信息学奥赛一本通-T1124)
- php7.0 freetype_php7.0.5安装教程
- 设计模式的有趣解释-追MM
- Airflow 重跑dag中部分失败的任务
- 一键清理垃圾的bat文件
- [阿里云] 域名解析设置
- TensorFlow实践四步法
- 【一文速通】机器学习样本不均衡/数据分布不同怎么办?
- 30秒了解Excel的前世今生
- 【云原生】企业级容器管理平台Openshift介绍
- 百度网盘开放平台接口,上传、下载等功能PHP详细操作
- OpenStack HA集群3-Pacemake Corosync
- 回忆数学老前辈孙元远先生
- docker添加新的环境变量_Docker容器环境变量设置与查看