数据结构和算法:(1)数据结构的基本知识
顺序存储结构:是把数据元素存放在地址连续的存储单元里,其数据间的逻辑关系和物理关系是一致的。
1号-------2号-------3号--------4号(比如1号元素存放在这,2号元素紧挨着它,3号元素紧挨着2号,以此类推,这是顺序存储,例如排队买东西)
为什么出现链式存储,就因为比如排队买东西的话,前边人太多,此时你有紧急事情需要离开以下,但是你再次回来的时候,即使还是没有轮到你原来离开时的位置,别人也不会让你插队站在你原来的位置了,应对这种变化的结构怎么办呢???
这个时候就需要应用到链式存储了,链式存储好比银行办理业务的叫号服务了,当你拿到号了(你可以任意位置的站着蹲着躺着),你看了看,前边还有好多号你离开一小下下,及时回来就好,再回来也没有人会把你的号拿走还是你的。
链式存储结构:是把数据元素存放在任意的存储单元里,这组存储单元可以是连续的,也可以是不连续的。(因此链式存储结构的存储元素存储关系并不能反映其逻辑关系(也就是说逻辑上的123的存放,逻辑上面是1,2,3,但是你事实上存放的并不是1后边就是2,2后边就是3,不是这样子的他可以随便放的,他有一个链连着,这样就需要一个指针来存放数据元素的地址),因此需要用一个指针存放数据元素的地址,这样子通过地址就可以找到相关联数据元素的位置。)(指针就是链着他们关系的一条链)
如上图他们在内存中的存放顺序是随意的,但是呢他们的每一个元素都多废了一点空间,因为他除了存放自身的数据他还要存放一个指针。指针指向的就是下一个的地址。比如说1号他存放第一个元素,他存放的值叫做1号, 他后边挨着的地址就是2号的地址通过这个地址找到了2号,2号再找3号,依次顺着指向的地址找下去(这就是链式存储)
数据结构和算法:(1)数据结构的基本知识相关推荐
- 数据结构与算法——常用数据结构及其Java实现
前言 仿佛一下子,2017年就快过去一半了,研一马上就要成为过去式了,我打算抓住研一的尾巴,好好梳理一下数据结构与算法,毕竟这些基础知识是很重要的嘛.所以准备在这里搞一个系列的文章,以期透彻. 本系列 ...
- 数据结构和算法 java实现_数据结构与算法——常用数据结构及其Java实现
前言 仿佛一下子,2017年就快过去一半了,研一马上就要成为过去式了,我打算抓住研一的尾巴,好好梳理一下数据结构与算法,毕竟这些基础知识是很重要的嘛.所以准备在这里搞一个系列的文章,以期透彻. 本系列 ...
- 数据结构与算法入门---数据结构类型
数据结构与算法入门---数据结构类型 数据的逻辑结构 数据的逻辑结构指数据元素之间的逻辑哦关系(和实现无关) 分类一:线性结构和非线性结构 线性结构:有且只有一个开始结点和一个终端节点,并且所有节点都 ...
- 【数据结构与算法】数据结构+算法=程序
[数据结构与算法]数据结构+算法=程序 数据结构 数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成.记为:Data_Structure=(D,R)其中D是数据元 ...
- 0x00000005 3.数据结构和算法 基础数据结构 字符串(上)
文章目录 基本知识简单总结 模式匹配 最长回文子串 前缀匹配 扩展和补充* C++11常见API References: 字符串也是一个高频考察点. 虽然可以和数组考点合并,但由于该场景许多优化空间大 ...
- java set第n位_数据结构与算法——常用数据结构及其Java实现
本文采用Java语言来进行描述,帮大家好好梳理一下数据结构与算法,在工作和面试中用的上.亦即总结常见的的数据结构,以及在Java中相应的实现方法,务求理论与实践一步总结到位. 常用数据结构 数组 数组 ...
- python数据结构与算法13_python 数据结构与算法 (13)
python 数据结构与算法 (13) 选择排序 (Selection sort) 是? 种简单直观的排序算法. 它的? 作原理如 下.? 先在未排序序列中找到最?(?)元素, 存放到排序序列的起始位 ...
- 【数据结构与算法】数据结构有哪些?算法有哪些?
1. 算法与数据结构总览图 2.常用的数据结构 2.1.数组(Array) 数组是一种聚合数据类型,它是将具有相同类型的若干变量有序地组织在一起的集合.数组可以说是最基本的数据结构,在各种编程语言中都 ...
- 尚硅谷01 数据结构与算法_数据结构与算法介绍+稀疏数组
数据结构与算法的关系 几个实际编程中遇到的问题 要想写出优秀的算法,首先应该能读懂别人写好的算法. 将生活中遇到的实际问题,使用程序来解决 线性结构和非线性结构 线性结构和非线性结构的关系: 数据结构 ...
- 【图解数据结构与算法】数据结构与算法知识点整理 Data Structures and Algorithms
程序=数据结构+算法 数据结构是可以存储和组织数据的命名位置. 算法是用于解决特定问题的一组步骤. 数据结构是指:一种数据组织.管理和存储的格式,它可以帮助我们实现对数据高效的访问和修改. 数据结构 ...
最新文章
- MATLAB实战系列(二十二)-matlab三维图形绘制案例最全集锦(毕设和数学建模必看)
- python相关软件安装
- 谭浩强c++程序设计知识点思维导图
- VB中什么是类,类模块有什么作用
- 影响网络电视直播清晰度的四个因素
- Vue-Cli3 使用jquery
- gif透明背景动画_ThunderSoft GIF Converter(GIF转换器)中文版分享
- 太原理工大学计算机课程设计报告,太原理工大学matlab课程设计报告
- tplink查看上网记录_Tplink路由器PPPOE拨号不能上网日志查看原因
- 【数学】求导公式+积分公式
- D3.js中文API
- thinkphp5.1+workman+jsonRpc
- Mac菜鸟进阶必学的10个Mac小技巧
- GR节点故障The member contains transactions not present in the group
- 自定义函数fac1用递推方法求n!,自定义函数fac2用递归方法求n!,主函数中输入整数n(0≦n≦10)后,分别调用函数fac1和函数fac2求n!,最后输出调用的结果值进行对比。
- “清华学霸计划表”刷爆家长群:自律的孩子有多棒?你想象不到
- 【Excel神技】之 下拉列表
- Android Q 适配,看这篇就妥了
- Jarvis-OJ-Web writeup
- 独作论文登数学顶刊,浙大女神校友再被提起:32岁在贵州深山投稿,一家出两位院士...
热门文章
- 2021年大数据常用语言Scala(二十九):scala面向对象 单例对象
- 2021年大数据常用语言Scala(二):Scala开发环境安装
- Ubuntu 打开文件 (使用nautilus )
- Mainfest merger failed
- android studio 通过界面快速查看md5
- 微信小程序 view中的image水平垂直居中
- layoutSubviews总结(转)
- bzoj 1040: [ZJOI2008]骑士 树形dp
- 《需求分析》读后感之二
- Android窗口管理服务WindowManagerService计算Activity窗口大小的过程分析