java单向链表中的头插法与尾插法
单链表属于数据结构中的一种基本结构,是一种线性结构,在此使用Java对其中的头插法以及尾插法进行解释。数据结构
首先定义好链表中的节点类:
其中,data表明节点所存放的数据,next表明指向下一节点学习
对于单链表而言其结构以下图:
视频
能够得知在链表是以地址索引的方式进行存储,next就显得尤其重要,下面介绍两种易懂的插入方式
①头插法
原理:将每一个新节点都插在头节点的前面,并本身成为头节点
代码为:
原理解释图为:
值得注意的是,当链
值得注意的是,当链表第一次添加节点时,头节点为空,因此第一次操做都是直接被新节点覆盖,这一原理在任何插入方法都同样,包括下面将要提到的尾插法。
当存在1个节点时,加入新节点只需将新节点的next指向当前的头节点,并使新节点覆盖头节点,即可以将两节点链起来get
②尾插法:
找到链表中最后一个节点,将新节点添加在后面原理
代码:
原理图为:
原理图为:
易知在尾插法中,只须要使用一个临时temp节点复制头节点以后,一次向后寻找next直到找到尾节点,由于尾节点以后没有节点,并将尾节点的next指向新节点,就能够将两节点链起来了。
java单向链表中的头插法与尾插法相关推荐
- 头插法与尾插法建立单链表
头插法与尾插法建立单链表 import java.util.*; class Node {int value;Node next;Node(int x) {value = x;} } public c ...
- 头插法、尾插法建立单链表(含详细注释C++)
一.信息须知: 1:malloc()函数,头文件为cstdlib. 用法: node *p=(node *)malloc(sizeof(node)). 作用:分配一个node类型大小的内存空间, 并把 ...
- 头插法、尾插法建立单链表
头插法.尾插法建立单链表 #include<stdio.h> #include<stdlib.h> #define TRUE 1 #define FALSE 0 #define ...
- 单链表的头插法与尾插法代码实现及详解
1. 头插法 2. 尾插法 3. 代码测试 1. 头插法 头插法: 从一个空表开始,重复读入数据,生成新结点,将读入数据存放到新结点的数据域中,然后将新结点插入到当前链表的表头结点之后,直到读入结 ...
- C语言实现单链表(带头结点)的基本操作(创建,头插法,尾插法,删除结点,打印链表)
http://blog.csdn.net/xiaofeige567/article/details/27484137 C语言实现单链表(带头结点)的基本操作(创建,头插法,尾插法,删除结点,打印链表) ...
- [数据结构]头插法与尾插法
#include "stdio.h" #include "stdlib.h" typedef struct List {int data; //数据域struc ...
- 头插法、尾插法的理解
/*************************************************************** Author :bryant~xw Created Time :201 ...
- Java单链表插入基本操作(头插法、尾插法、任意位置插入法)
一.单链表的头插法 1.创建一个NODE节点的类,写一个public void addFirst()的函数来实现链表的头部插入,最后写一个public void display()的函数实现链表的打 ...
- 链表的两种创建方法——头插法与尾插法
链表创建的两种方法 引言 首先讲述了我自己在动态实现数据结构的时候遇到的大坑结构体指针问题,随后就是头插法和尾插法的介绍. 结构体指针 引言 首先需要讲述的是一个让我改了一天半的bug.实际上 ...
最新文章
- [转载]Python方法绑定——Unbound/Bound method object的一些梳理
- ubuntu下qt运行报错 /usr/bin/ld: cannot find -lGL
- Ubuntu14.04安装pip及配置
- git 小乌龟 更新分支_git常用操作
- deb下载路径、apt下载路径(deb路径、apt路径)、自定义打包deb文件、安装deb文件、解压deb文件
- 【算法】剑指 Offer 30. 包含min函数的栈
- Spring Boot Admin工程搭建(Eureka)
- Python捕捉命令输出、错误输出及赋值命令到变量的方法
- 固定二进制位的整型变量
- java实现jsp转pdf,使用Java生成Pdf文档-JSP教程,Java技巧及代码
- NIOS II 烧写epcs中遇到的问题
- 三维重建笔记_基于图像的大规模场景三维建模overview
- 易语言取MySQL错误代码_易语言mysql错误排查
- 国开电大 光伏电池原理与工艺 形考任务
- 执行若依(ruoyi)项目
- oracle 无效连接,Oracle SQL多重连接与重复记录或“无效标识符”
- [UE4]Set Skeletal Mesh,在蓝图中设置骨骼模型
- 论文笔记 | 基于深度学习的乳腺转移瘤识别(Deep Learning for Identifying Metastatic Breast Cancer)
- 电动车充电显示服务器无响应,纯电动汽车在充电时屏幕显示BMS无响应是怎么回事?...
- python zen_Python彩蛋--zen of python