python没有指针如何实现链表_Java、Python中没有指针,怎么实现链表、图等数据结构?...

Java、Python中没有指针,怎么实现链表、图等数据结构?

(2016-10-06 11:08:19)

分类:

C

其实Java, python完全可以看成在语言层用语法糖隐藏了指针。JAVA中到处充满指针,只不过把C++中的指针封装成了对象的引用了,引用就相当于C++中的指针

b,那A实例化(b在A实例化新开辟而不是通过外部赋值),内存开辟一段包含一个int a和 一个b

的reference地址,b实例化和A一样,然后把地址抛给A中b的reference。其实这个和C/C++中的A中有个B*

b差不多。所以链表、图等数据结构在C/C++中的实现转义到Java中也就是改改语法糖的表示。

Python中,链表、树等数据结构大致对应Python自带list、tuple、dict。Python这种动态语言用C实现,拿Python的list来讲,用一个struct

PyListObject 实现,看看源码指针随处都是。

C/C++这样的语言比较接近早期抽象计算机数据的思维方式,指针其实就是我们抽象数据并且这个数据是聚合但是实际内存离散的胶合层产物。后来出的语言通过其他的方式来抽象数据表示,将指针这个概念隐藏了,显得友好了,但是其实他还在那。

作者:成晨

链接:http://www.zhihu.com/question/22680562/answer/22288444

来源:知乎

著作权归作者所有,转载请联系作者获得授权。

分享:

sg_trans.gif喜欢

0

sg_trans.gif赠金笔

加载中,请稍候......

评论加载中,请稍候...

发评论

登录名: 密码: 找回密码 注册记住登录状态

昵 称:

评论并转载此博文

sg_trans.gif

发评论

以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/499110.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android语言列表+波斯,Android 多语言入门及实战

右键res,选择 New Resource Directory ,选择 locale ,选择自己想要适配的语言类型设置应用内多语言Android 7.0以下/*** 设置多语言*/public void setConfiguration(LocaleList locales, Context context) {Configuration configuration context.getResources().ge…

python接入excel_通过Python导入Excel数据,实现自动化数据测试

一、安装openpyxl pip install openpyxl 二、获取Excel表格数据 以下是我的表格数据 #导入load_workbook工作表 from openpyxl import load_workbook #创建粘贴工作表数据的类 class ParseExcel(): #工作表路径及工作表的名字 def __init__(self,excelPath,sheetName): #加载表…

html长图转换成pdf,将长 html 导入拆分 PDF

我的情况是:单击按钮时,将 html 上的数据导入 PDF 文件。由于此 PDF 必须具有一些复杂的必需样式,因此我的第一步是使用 html2canvas.js 将此页面转换为图像,然后使用 jsPDF.js 将此图像导入 PDF当数据太大时,必须拆分…

python 魔法方法常用_python 常用的魔法方法

1. 构造方法 __new__(cls,[...) 对象实例化时第一个调用的方法,它只取下 cls 参数,并把其他参数传给 __init__ 。 __init__(self,[...]) 使用传入的参数来初始化实例,不能返回除了None的任何值。 __del__(self) 定义了当对象被垃圾回收时的行…

c# 从地址拷贝byte_面试必备的 “零拷贝” 问题!从头给你说!

本文作者:ksfzhaohui来源:juejin.im/post/5cad6f1ef265da039f0ef5df前言I/O概念1.缓冲区2.虚拟内存3.mmapwrite方式4.sendfile方式Java零拷贝1.MappedByteBuffer2.DirectByteBuffer3.Channel-to-Channel传输Netty零拷贝其他零拷贝总结前言从字面意思理解…

html css实现登录注册页面,基于HTML5+css+JS_的精美登陆注册界面

【实例简介】基于HTML5cssJS的精美登陆注册界面-------------------------------【实例截图】【核心代码】login4├── index.html├── resources│ ├── images│ │ ├── arrow.png│ │ ├── arrow-p.png│ │ ├── bg.png│ │ ├── btn.pn…

lda 可以处理中文_中文分词(jieba)和语料库制作(gensim)

本文的内容为以下两个部分:文本分词(jieba)语料库制作(gensim)结巴(jieba)分词在自然语言处理领域中,分词和提取关键词都是对文本处理时通常要进行的步骤。用Python语言对英文文本进…

js时间搓化为今天明天_秋冬国产搓背神器!360°无死角,让你搓背不求人,太舒服了...

秋冬国产搓背神器!360无死角,让你搓背不求人,太舒服了!夏季悄然离去,秋季快步走来,距离冬季也不远了~天气变冷以后,下班、放学回家了最惬意不过的就是洗个澡,如果泡完澡再搓个背&…

用html制作广告图片切换效果,基于jquery实现图片广告轮换效果代码

效果图:实现代码:hotmarquee*{margin: 0;padding: 0;}body{font: 12px;padding-top: 50px;padding-right: 200px;padding-bottom: 100px;padding-left: 200px;}ul{list-style: none;}img{padding: 2px;border: 1px solid #eee;}a{outline: none;}#imgs{width: 410px;margin-rig…

matplotlib柱状图上方显示数据_Python数据分析matplotlib可视化之绘图!

Matplotlib是一个基于python的2D画图库,能够用python脚本方便的画出折线图,直方图,功率谱图,散点图等常用图表,而且语法简单。Python中通过matplotlib模块的pyplot子库来完成绘图。Matplotlib可用于创建高质量的图表和…

应付账款账龄分析模板_企业财务报表分析论文应如何着手?

首先是企业的选择,最好选取上市公司进行分析,上市公司的财务数据比较透明,完全可以从新浪财经、中国证券网等平台获得详尽的报表数据资料,一般选取近三到五个年度。有了数据就可以着手分析了,我们可以从下面几个方法入…

dbeaver导入excel文件_PyQT5练习:制作Excel文件导入MySQL窗口

本文环境配置:系统>windows10:64位工具>PyCharm:2018.3.1语言>Python:3.7.1第三方库PyQT5:5.11.3pyqt5-tools:5.11.3.1.4PyMySQL:0.9.3openpyxl:2.5.12练手:制作…

编程中的蛇形填空问题_PCB—蛇形线的作用,这次真的是把你搞懂了

经常能看到论坛里有人在问蛇形线的问题。平时我们能看到蛇形线的地方大都是一些高速高密度板,好像带有蛇形线的板子就更高级,会画蛇形线就是高手了。网上关于蛇形线的文章也有很多,总感觉有些帖子的内容会误导新手,给人们带来困扰…

html5控制gif速度,gif加速软件 教你加快GIF图片的播放速度

一位狸友在编辑GIF动态图片时碰到了一个问题,就是不知怎么把GIF动画的播放速度加快(或减慢)。如果你也正巧碰到此类疑问或想知道GIF加速的方法,可以接着往下看哦。其实先理解了GIF动画的原理,并找对合适的gif编辑软件,解决这问题并…

html文本弹性,HTML5 很有趣的文本蹦床/弹性弯曲动效

CSS语言:CSSSCSS确定import url(http://fonts.googleapis.com/css?familyOpenSans:400,800,300);html,body {height: 100%;}body {display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display: flex;-webkit-box-pack: center;-webkit-justify-cont…

android studio mvvm模板生成_使用Vue快速生成shape背景图

写在前面在日常的Android开发之中,我们通常都会根据UI图去手动创建shape或者selector背景图,虽说创建起来很简单,但是未免也会感到繁琐,因此也研究了一些这方面的知识,包括自定义shapedrawable、dataBinding&#xff0…

python 句子中没有中文_人生感悟经典句子,生活中可以没有诗歌,但不能没有诗意...

也曾有过一些热忱和勇气,为了自以为的命中注定颠沛流离,本想有一段花好月圆,却未曾想过就此天各一方。不是不爱,不是不会爱,只是少了坚持走下去的勇气。想必这是很多人的心声。错过抑或过错,都是爱情里常有…

计算机用户删除 cmd,命令提示符下怎么新建用户和删除用户

在日常管理电脑中的用户时,我们都是通过控制面板和计算机管理的用户帐户来管理进行用户添加和用户删除的,有一种更快捷的方法就是使用命令对用户帐户进行管理,NET USER 用于创建和修改计算机上的用户帐户,如:新建&…

图像迁移风格保存模型_图像风格迁移也有框架了:使用Python编写,与PyTorch完美兼容,外行也能用...

原标题:图像风格迁移也有框架了:使用Python编写,与PyTorch完美兼容,外行也能用选自Medium作者:Philip Meier 机器之心编译 编辑:陈萍 易于使用的神经风格迁移框架 pystiche。 将内容图片与艺术风格图片进行…

vivo设置全屏后状态栏黑色_vivo手机用2年内存占满,是这3个功能捣乱,一键按下全部释放...

vivo手机用2年内存占满,是这3个功能"捣乱",一键按下全部释放经常使用手机如果没有清理习惯,那么应用一多,产生的文件就会变多,这样手机就会没用2年就出现卡顿的现象。今天来教大家怎样一键释放vivo手机内存。…