随笔 - 1162  文章 - 0  评论 - 16  阅读 - 59万 

随笔分类 -  算法与数据结构

双向链表
摘要:双向链表 管理单向链表的缺点分析: 1、单向链表,查找的方法只能是一个方向,而双向链表可以向前或者向后查找 2、单线链表不能自我删除,需要靠辅助节点,而双向链表,则可以自我删除。 应用实例:使用带 head 头的双向链表实现 — 水浒英雄排行榜 双向链表如何完成遍历,添加,修改和删除的思路示意图: 阅读全文
posted @ 2019-09-22 09:02 格物致知_Tony 阅读(817) 评论(0) 推荐(0) 编辑
单链表 案例
摘要:1、求单链表中有效节点的个数 代码实现: 2、查找单链表中的倒数第 K个节点 代码实现: 3、单链表的反转 思路分析图解: (1) (2) 代码演示: 4、从尾到头打印单链表 思路分析图解: 代码实现: 5、合并两个有序的单链表,合并之后的链表仍然有序 阅读全文
posted @ 2019-09-21 14:50 格物致知_Tony 阅读(452) 评论(0) 推荐(0) 编辑
单链表
摘要:单链表 单链表(带头链表)的逻辑结构示意图 单链表的应用实例 使用带 head 头的单向链表实现:对水浒英雄排行榜管理,完成对英雄人物的增删改查操作。 (1)第一种方法添加英雄时,直接添加到链表的尾部。 思路分析示意图: (2)第二种方式添加英雄时,根据排名将英雄插入到指定位置(如果有这个排名,则添 阅读全文
posted @ 2019-09-21 09:45 格物致知_Tony 阅读(313) 评论(0) 推荐(0) 编辑
链表(Linked List)
摘要:链表(Linked List) 一、介绍 链表是有序的列表,它在内存中存储方式(物理存储)如下: 小结: (1)链表是以节点的方式来存储,是链式存储。 (2)每个节点包含 data 域:存储数据;next 域:指向下一个节点。 (3)如上图,链表的各个节点不一定是连续存储的。 (4)链表分带头节点的 阅读全文
posted @ 2019-09-20 10:39 格物致知_Tony 阅读(260) 评论(0) 推荐(0) 编辑
数组模拟队列
摘要:数组模拟队列 队列本身是有序列表,若使用数组的结构来存储队列的数据,则队列数组的声明如下图。其中,maxSize 是该队列的最大容量。 因为队列的输出、输入是分别从前后端来处理,因此需要两个变量 front 及 rear 分别记录队列前后端的下标, front 会随着数据输出而改变,而 rear 则 阅读全文
posted @ 2019-09-19 15:34 格物致知_Tony 阅读(314) 评论(0) 推荐(0) 编辑
队列
摘要:队列 队列是一个有序列表,可以用数组或是链表来实现 遵循先入先出的原则。即:先存入队列的数据,要先取出。后存入的要后取出。 数组模拟示意图: rear 指针代表队尾,front 指针代表对首。 数组模拟队列 链表模拟队列 阅读全文
posted @ 2019-09-19 15:22 格物致知_Tony 阅读(177) 评论(0) 推荐(0) 编辑
稀疏数组
摘要:稀疏数组(sparsearray) 基本介绍 因为该二维数组的很多值是默认值 0,因此记录了很多没有意义的数据,我们可以使用稀疏数组来保存该数组。 当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组。 稀疏数组的处理方法是: (1)记录数组一共有几行几列,有多少个不同的 阅读全文
posted @ 2019-09-18 12:14 格物致知_Tony 阅读(272) 评论(0) 推荐(0) 编辑
数据结构和算法概述
摘要:一、数据结构和算法的关系 1、数据 data 结构(structure)是一门研究组织数据方式的学科 2、程序 = 数据结构 + 算法 3、数据结构是算法的基础 二、常见的算法有 1、KMP 模式匹配 2、普利姆算法 3、佛洛依德算法 4、分支算法 5、回溯算法 三、线性结构 数据结构包括:线性结构 阅读全文
posted @ 2019-09-18 09:44 格物致知_Tony 阅读(509) 评论(0) 推荐(0) 编辑
数据结构 基础介绍
摘要:一、栈 1、栈 栈:stack,又称堆栈,它是运算受限的线性表,其限制是仅允许在标的一端进行插入和删除操作,不允许在其他任何位置进行添加、查找、删除等操作。 2、特点 先进后出(即,存进去的元素,要在后它后面的元素依次取出后,才能取出该元素)。例如,子弹压进弹夹,先压进去的子弹在下面,后压进去的子弹 阅读全文
posted @ 2019-08-30 23:01 格物致知_Tony 阅读(268) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示