数据结构
文章平均质量分 94
记录以前数据结构的学习总结(含C语言和Java)
陌路_一步一步往上爬
行百里者半九十
累丸二而不坠,则失者锱铢;
累三而不坠,则失者十一;
累五而不坠,犹掇之也。
展开
-
Java数据结构与算法-队列(详细实现)
队列(Queue)4.1 情景使用电脑时,机器有时会处于疑似死机状态,鼠标点什么都没有反应,当失去耐心打算关机重启的时候,突然清醒一般,把刚刚点击的所有操作都按顺序执行了一遍。这是因为操作系统的多个程序需要通过一个通道输出,而按先后次序排队等待造成的。还有就是一些系统中的客服人员,客服人员有限,当咨询人数大于客服人员总数后,就需要排队,当哪个客服人员有空闲时,会把最早排队的人进行安排。4.2 什么是队列结构队列结构从逻辑上来看是线性结构,从存储结构上来看可以划分为两类顺序队列:使用一组原创 2021-07-25 09:58:37 · 1033 阅读 · 2 评论 -
Java数据结构与算法-栈(详细实现)
栈(Stack)栈是一种特殊的数据结构,在中断处理特别是重要数据的现场保护意义重要,常见的栈的应用十分广泛,如弹夹式手枪、网页的后腿按钮、Word等文本工具的撤销功能等等。3.1 什么是栈结构栈是限定仅在表尾进行插入和删除操作的线性表,栈结构是一种线性结构。从数据存储结构进一步划分,可以分为以下两类:顺序栈。使用一组地址连续的内存单元依次保存栈中的数据。定义一个指定大小的数组作为栈,序号为0的元素为栈底,定义一个变量top保存栈顶的序号。链式栈。使用链表形式保存栈中各元素的值。链表头部(原创 2021-07-25 09:56:34 · 467 阅读 · 0 评论 -
Java数据结构与算法-线性表(详细实现)
线性表(Linear List)2.1 什么是线性表零个或多个数据元素的有限序列。非空线性表的逻辑结构特征有且仅有一个开始结点,无直接前趋,有且只有一个直接后继有且仅有一个结束结点,有且只有一个直接前趋,无直接前驱。内部结点都有且只有一个直接前趋和一个直接后继对于同一线性表,数据类型一直,数据元素长度一致。2.2 线性表基本运算基本运算包括initList初始化操作,建立一个空的线性表listEmpty若线性表为空,返回true,否则返回false原创 2021-07-25 09:53:36 · 3439 阅读 · 8 评论 -
Java数据结构与算法-数据结构概述(补充)
数据结构概述1.1:什么是数据结构数据结构是数据的组织形式,可以用来表示特定的对象数据。计算机程序所操作的对象是各式各样的数据,通常拥有不同的数据解耦股,对此采用的处理方法不同,计算的复杂程度也不一样,因此算法往往依赖于某种数据结构,即数据结构是算法实现的基础。1.2:数据结构的内容数据结构包括三方面内容数据的逻辑结构数据元素之间的逻辑关系,与数据在计算机中如何存储无关,是独立于计算机的抽象概念。数据的存储结构数据元素及其逻辑关系在计算机存储器上的表示形式。存储结构依赖于计算原创 2021-07-25 09:48:01 · 255 阅读 · 0 评论 -
Java数据结构与算法-算法概述(补充)
算法概述1.1 算法分类算法是一门古老且庞大的学科,随着历史的发展,演化出多种多样的算法。1.按照应用来分类按照算法的应用领域,也就是解决的问题。大致可以分为基本算法、数据结构相关算法、几何算法、图论算法、规划算法、数值分析算法、加密/解密算法、排序算法、查找算法、并行算法和数论算法等。2.按照确定性来分类确定性算法:有限时间内完成计算,得到结果是惟一的,经常取决于输入值。非确定性算法:有限时间内完成计算,得到结果不唯一,存在多值性。3.按照算法的思路来分类大致可分为递推原创 2021-07-25 09:42:42 · 289 阅读 · 7 评论 -
Java数据结构与算法-算法
前言文章内容是本人之前学习数据结构时所做的零散笔记的汇总及补充,整理过程难免有瑕疵,如果小伙伴发现错误请及时不吝指出,在此谢过!算法1 数据结构与算法关系谈数据结构,很多时候都会讲到算法,以及它们之间的关系,有一些经典书籍的名字也叫做“数据结构与算法分析”。那么二者之间有啥关系呢?为啥老是组团出现呢?假设说,有一天你打算去现场看德云社相声,到了现场一看,结果发现怎么只有一个人在讲相声,原来是另外一个搭档生病没有来,这就有点尴尬了,这还有什么看头呢?事实上,数据结构和算法也是类似的关系。只谈原创 2020-07-13 09:32:21 · 324 阅读 · 0 评论 -
Java数据结构与算法-基本概念和认识
前言文章内容是本人之前学习数据结构时所做的零散笔记的汇总及补充,整理过程难免有瑕疵,如果小伙伴发现错误请及时不吝指出,在此谢过!绪论1 数据结构的起源早期人们都把计算机理解为数值计算工具,就是感觉计算机当然是用来计算的,所以计算机解决问题,应该是先从具体问题中抽象出一个适当的数据模型,设计出一个解此数据模型的算法,然后在编写程序,得到一个实际的软件.现实中,我们更多的不是解决数值计算的问题,而是需要一些更科学有效的手段(比如表,树和图等数据结构)的帮助,才能更好的处理问题,所以数据结构是一门原创 2020-07-12 11:25:10 · 489 阅读 · 0 评论