![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
数据结构与算法的学习记录
抖抖兜兜都豆豆
从删库到跑路
展开
-
环形链表实现约瑟夫问题(Josepfu问题) 学习记录
@TOC 本文旨在加深学习印象并留记录以供日后查看。学习视频为韩顺平图解Java数据结构和算法,以下内容来自于视频内容与自我总结。如有错误请您指正。 约瑟夫问题 问题描述 设编号为1,2,… n的n个人围坐一圈,约定编号为k(1<=k<=n)的人从1开始报数,数到m 的那个人出列,它的下一位又从1开始报数,数到m的那个人又出列,依次类推,直到所有人出列为止,由此产生一个出队编号的序列。 问题分析 可以使用环形链表来解决 先构成一个有n个结点的单循环链表,然后由k结点起从1开始计数,计到m时,对应原创 2020-06-28 17:26:08 · 187 阅读 · 0 评论 -
链表(Linked List) 双向链表 学习记录
链表 双向链表 Linked List双向链表思路分析创建节点创建双向链表添加节点修改节点删除节点完整代码及测试结果 本文旨在加深学习印象并留记录以供日后查看。学习视频为韩顺平图解Java数据结构和算法,以下内容来自于视频内容与自我总结。如有错误请您指正。 双向链表 百科:双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。一般我们都构造双向循环链表。 前文分析了单链表的实现与问题,本文原创 2020-06-24 17:08:02 · 197 阅读 · 0 评论 -
链表(Linked List) 单链表 学习记录
链表 Linked List链表问题分析与代码实现完整代码及测试结果 本文旨在加深学习印象并留记录以供日后查看。学习视频为韩顺平图解Java数据结构和算法,以下内容来自于视频内容与自我总结。如有错误请您指正。 链表 维基百科:链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer)。由于不必须按顺序存储,链表在插入的时候可以达到O(1)的复杂度,比另一种线性表顺序表快得多,但是查找一个节点或者访问特定编号的原创 2020-06-22 18:15:43 · 186 阅读 · 0 评论 -
数组模拟队列以及环形队列 学习记录
数组模拟队列队列代码实现问题环形队列思路 本文旨在加深学习印象并留记录以供日后查看。学习视频为韩顺平图解Java数据结构和算法,以下内容来自于视频内容与自我总结。如有错误请您指正。 队列 队列是一个有序列表,可以用数组或是链表来实现。 遵循先入先出的原则。即:先存入队列的数据,要先取出。后存入的要后取出 示意图:(使用数组模拟队列示意图) 因为队列的输出、输入是分别从前后端来处理,因此需要两个变量 front及 rear分别记录队列前后端的下标,front 会随着数据输出而改变,而 rear则是随着原创 2020-06-19 16:20:09 · 159 阅读 · 0 评论 -
稀疏数组(SparseArray)学习记录
稀疏数组基本介绍实例思路代码实现 本文旨在加深学习印象并留记录以供日后查看。学习视频为韩顺平图解Java数据结构和算法,以下内容来自于视频内容与自我总结。如有错误请您指正。 基本介绍 稀疏数组通俗的讲 可以看做是对具有大量无效数据的普通数组的压缩 例如: //普通数组 0 1 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0原创 2020-06-15 18:05:14 · 178 阅读 · 0 评论