算法小记-链表
时间:2023-10-19 01:07:01
一 链表定义
一组分散的内存块通过指针串联在一起。
二 特点
(1)不需要连续的内存空间。
(2)引用指针
(3)三种最常见的链表结构:单链表、双向链表和循环链表
三 单链表
头节点和最后一个节点。头节点用来记录链表 基地址。尾节点 指向下一个空地址null
四 循环链表
尾节点指针指向链表 的头节点
五 双向链表
它支持两个方向,每个结点都有一个以上的针next指向后面的结点,还有一个前驱指针prev指向前面的结点
基本操作
package yrz; public class LinkedList { private Node head ; public void addHead(int data) { Node headNode = new Node(data); headNode.next = head; head = headNode; } public void addMiddleData(int index,int data) { if(index == 0) { addHead(data); }else { Node headNode = new Node(data); Node cur = head ; for(int i = 0; i