数据结构和算法
文章平均质量分 67
使用Java实现数据结构和算法
努力的冷清人
这个作者很懒,什么都没留下…
展开
-
3.约瑟夫问题(环形单链表实现)
大体是这样的一群孩子围成一个圈,然后指定某个孩子开始进行从1报数并按照指定方向依次报数,当某个孩子报数恰好是我们规定出圈的数,这个孩子则出圈,由下一个孩子重新从1开始报数,依次类推,直到圈内只剩下一个孩子,这个游戏结束。之后我们需要声明一个helper辅助指针,初始时指向最后一个节点也就是first指向的节点的前一个节点,用于帮助我们后续出圈操作,这个helper指针必须紧跟着first指针,声明之后我们进行遍历将helper指针指向最后一个节点,如下图。先进行出圈操作,进行移动指针。......原创 2022-07-16 10:04:59 · 1101 阅读 · 1 评论 -
2.双向链表复习
继单链表之后,再来一波双向链表,双向链表和单向链表的区别在于在不考虑环形结构的情况下双向链表中的节点都是拥有前后两个指针指向的(除了第一个和最后一个节点)比起单向链表的操作来说更加方便...原创 2022-07-06 10:34:12 · 190 阅读 · 0 评论 -
1.数据结构之单链表
单链表闲来无事,跟着韩老师的课复习+再学习一次数据结构和算法,浅记一下哈哈概念:单链表是一种链式存取的数据结构,用一组地址任意的存储单元存放线性表中的数据元素。链表中的数据是以结点来表示的,每个结点的构成:元素(数据元素的映象) + 指针(指示后继元素存储位置),元素就是存储数据的存储单元,指针就是连接每个结点的地址数据。通俗来说,链表就是一个个的节点给串起来的结构,然后在此结构上进行各种改造和操作,以满足我们日常的各种需求和操作。当然链表在数据结构这部分算是基础并不难以前可能是照着韩老师的敲,现在原创 2022-05-19 10:23:42 · 151 阅读 · 1 评论