链表之单链表约瑟夫问题(一)
package com.chenyu.zuo.linkedList;import com.chenyu.zuo.linkedList.RemoveMidNode.Node;
/*** 环形单链表的约瑟夫问题* 比如5个人,报数第3个就删除,从第一个人开始报数* 1、2、3、4、5* 1、2、4、5* 2、4、5* 2、4* 4* 最后4留下来了* 输入:一个单向环形链表的头节点head和报数的值m* 返回:最后生存下来的节点,且这个节点自己组成环形单向链表,其他节点都删掉* * 思路:* 1、先把不满足条件的时候返回头节点* 2、得到我们链表的最后一个节点,然后遍历每个节点,不断转圈,不断让每个节点报数。* 3、当报数到达m时,就删除当前报数的节点* 4、删除节点后,别忘了还要把剩下的节点继续连接成环状,继续转圈报数,继续删除。* 5、不停的删除,直到环形链表中只剩下一个节点,过程结束* 只不过我们的时间复杂度是(n*m),下一篇博客进阶时间复杂度O(N)*/
public class GosephusKill {static class Node{int val;Node next;public Node(int val){this.val=val;}}public Node kill1(Node head,int m){if(head==null || head.next==head || m<0){return head;}Node last=head;while(last.next!=head){ /
链表之单链表约瑟夫问题(一)相关推荐
- 【数据结构与算法】 01 链表 (单链表、双向链表、循环链表、块状链表、头结点、链表反转与排序、约瑟夫环问题)
一.线性表 1.1 概念与特点 1.2 线性表的存储结构 1.3 常见操作 1.4 应用场景 二.链表 2.1 链表简介 2.2 单向链表(单链表) 2.21 基本概念 2.22 单链表基本操作 2. ...
- php链表和联表的区别,PHP_浅谈PHP链表数据结构(单链表),链表:是一个有序的列表,但 - phpStudy...
浅谈PHP链表数据结构(单链表) 链表:是一个有序的列表,但是它在内存中是分散存储的,使用链表可以解决类似约瑟夫问题,排序问题,搜索问题,广义表 单向链表,双向链表,环形链表 PHP的底层是C,当一个 ...
- php mysql 链表_浅谈PHP链表数据结构(单链表)
链表:是一个有序的列表,但是它在内存中是分散存储的,使用链表可以解决类似约瑟夫问题,排序问题,搜索问题,广义表 单向链表,双向链表,环形链表 PHP的底层是C,当一个程序运行时,内存分成五个区(堆区, ...
- python之链表、单链表、双向链表、单向循环链表
python之链表.单链表.双向链表.单向循环链表 链表 顺序表的构建需要预先知道数据大小来申请连续的存储空间,而在进行扩充时,又需要进行数据的搬迁,所以使用起来并非很灵活 链表结构可以充分利用计算机 ...
- 数据结构5: 链表(单链表)的基本操作及C语言实现
逻辑结构上一个挨一个的数据,在实际存储时,并没有像顺序表那样也相互紧挨着.恰恰相反,数据随机分布在内存中的各个位置,这种存储结构称为线性表的链式存储. 由于分散存储,为了能够体现出数据元素之间的逻辑关 ...
- 单链表删除所有值为x的元素_C/C++编程笔记:如何使用C++实现单链表?单链表的基本定义...
如何弥补顺序表的不足之处? 第一次学习线性表一定会马上接触到一种叫做顺序表(顺序存储结构),经过上一篇的分析顺序表的优缺点是很显然的,它虽然能够很快的访问读取元素,但是在解决如插入和删除等操作的时候, ...
- python单链表实现具体例子_Python实现数据结构线性链表(单链表)算法示例
本文实例讲述了Python实现数据结构线性链表(单链表)算法.分享给大家供大家参考,具体如下: 初学python,拿数据结构中的线性链表存储结构练练手,理论比较简单,直接上代码. #!/usr/bin ...
- c语言数组指定位置插入和删除_玩转C语言链表,单链表/双向链表的建立/遍历/插入/删除...
最近临近期末的C语言课程设计比平时练习作业一下难了不止一个档次,第一次接触到了C语言的框架开发,了解了View(界面层).Service(业务逻辑层).Persistence(持久化层)的分离和耦合, ...
- 线性表:3.链表,单链表详解与C语言实现
逻辑结构上一个挨一个的数据,在实际存储时,并没有像顺序表那样也相互紧挨着.恰恰相反,数据随机分布在内存中的各个位置,这种存储结构称为 线性表的链式存储 . 由于分散存储,为了能够体现出数据元素之间的逻 ...
- C语言丨线性表(二):线性链表(单链表)
线性表是由数据类型相同的个数据元素组成的有限序列,通常记为: 其中n为表长,n=0时称为空表:下标i表示数据元素的位序. 线性表的特点是组成它的数据元素之间是一种线性关系,即数据元素"一个接 ...
最新文章
- ORA-4031错误深入解析
- ubuntu 更新系统时间
- jquery设置表单元素只读_jquery设置元素readonly与disabled属性
- python 必备模块和包_Python_异常和模块
- PlistBuddy简单使用
- Bzoj3998 弦论
- regsvr32.exe
- [ES6] 细化ES6之 -- 变量的解构赋值
- 软件测试中80/20原则
- js室内地图开发_支付宝小程序室内地图导航开发-支付宝小程序JS加载esmap地图...
- 什么样的人适合学web前端?
- Easy Data Transform for mac (Excel和CSV编程文件转换工具) v1.11.1激活版
- python报告水印怎么弄_如何用python操作word添加水印?这里有个问题,希望大家看一下!...
- ChatGLM-6B【完全转载】
- ubuntu18.04关闭笔记本触摸板
- Lm317电压源芯片制作电流源
- html js 禁用浏览器上下滑动,纯JS阻止浏览器默认滚动事件,实现自定义滚动方法...
- 快速入门ESP32的硬件设计原理以及典型应用案例UART串口转WIFI智能硬件,以及ESP32-Lyra(智能音频台)设计方案。
- lim[(n!)^(1/n)]/n的极限
- ubuntu平台下ffmpeg的编译安装方法
热门文章
- 从零实操基于WSL2 Docker部署Asp.Net Core项目
- c#:细说时区、DateTime和DateTimeOffset在国际化中的应用
- BeetleX.FastHttpApi之控制器调度设计
- [Stardust]星尘配置中心
- Asp Net Core 5 REST API 使用 RefreshToken 刷新 JWT - Step by Step(三)
- Mock 框架 Moq 的使用
- 好的重构方法才能摆脱“屎山”
- PHP大势已去,PHP宝藏可为我所用
- BitArray虽好,但请不要滥用,又一次线上内存暴增排查
- Zend创始人离职原来早已安排好