摘要:单链表是数据结构中以动态结构存储的线性结构,在语言中,一般用本类对象引用的方式在内存中将一组相同类型的对象存储,熟悉单链表的基本操作有助于灵活解决此类算法问题。
单链表是数据结构中以动态结构存储的线性结构,在Java语言中,一般用本类对象引用的方式在内存中将一组相同类型的对象存储,熟悉单链表的基本操作有助于灵活解决此类算法问题。
1.单链表中的节点可以用节点类型描述如下:
</>复制代码
public class Lnode{
public char data;
public Lnode next;
}
2.单链表可以按如下的类进行封装:
</>复制代码
public class LinkedList{
Lnode h = null;
public LinkedList(){...}
public insertElement(char ch,int i){...}
//...省略方法
}
3.头插法建立单链表
</>复制代码
public LinkedList(String str){
h = new Lnode;
h.next = null;
int i = 0;
Lnode p;
char ch;
while(i
4.尾插法建立单链表
</>复制代码
public LinkedList(String str){
h = new Lnode();
h.next = null;
char ch;
Lnode p;
Lnode t = h;
int i = 0;
while(i
5.求单链表的长度
</>复制代码
public int size(){
int i = 0;
Lnode p = h.next;
while(p!=null){
i++;
p = p.next;
}
return i;
}
6.1 在单链表某节点之后插入新节点
</>复制代码
public void insertElementAfter(Lnode p,char ch){
Lnode s = new Lnode();
s.data = ch;
s.next = p.next;
p.next = s;
}
6.2 在单链表第i个元素之前插入一个元素
</>复制代码
public int insertElementAt(int i,char ch){
Lnode p;
int k = 0;
p = h.next;
while(p!=null&&k
7.删除单链表中某节点的后继节点
</>复制代码
public void remove(Lnode p){
if(p.next!=null){
Lnode s = p.next;
p.next = s.next;
s = null;
}
}
8.1 按值查找
</>复制代码
public Lnode search(char ch){
Lnode p = h.next;
while(p!=null&&p.data!=ch){
p = p.next;
}
return p;
}
8.2 按位置查找
</>复制代码
public Lnode get(int i){
Lnode p = h.next;
int k = 0;
while(p!=null&&k
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/68823.html
摘要:线性表的和采用了顺序表的实现技术,具有顺序表的所有性质。删除链表应丢弃这个链表里的所有结点。在语言中,就是检查相应变量的值是否为。也就是说,插入新元素的操作是通过修改链接,接入新结点,从而改变表结构的方式实现的。 1.线性表 Python的list和tuple采用了顺序表的实现技术,具有顺序表的所有性质。 2.链接表 单向链接表 的结点是一个二元组。 其表元素域elem保存着作为表元素...
摘要:线性表是最基本的数据结构之一,在实际程序中应用非常广泛,它还经常被用作更复杂的数据结构的实现基础。链表之单链表线性表的定义,它是一些元素的序列,维持着元素之间的一种线性关系。 线性表学习笔记,python语言描述-2019-1-14 线性表简介 在程序中,经常需要将一组(通常是同为某个类型的)数据元素作为整体管理和使用,需要创建这种元素组,用变量记录它们,传进传出函数等。一组数据中包含...
摘要:在上一篇文章中,我们了解了队列和栈的描述,现在让我们来了解一下单链表和双向链表的实现。单链表和双向链表具有以下特点可动态分配空间,但不能随机访问。 在上一篇文章中,我们了解了队列和栈的JavaScript描述,现在让我们来了解一下 单链表 和双向链表 的实现。本文的代码并非所有都由本人所写,只是出于学习目的,在此分享出来,并加上一定的解释,便于大家学习。 本系列文章的代码可在ht...
阅读 1203·2022-06-21 15:13
阅读 1992·2021-10-20 13:48
阅读 1180·2021-09-22 15:47
阅读 1493·2019-08-30 15:55
阅读 3246·2019-08-30 15:53
阅读 640·2019-08-29 12:33
阅读 838·2019-08-28 18:15
阅读 3600·2019-08-26 13:58