用Java实现单向链表
//class Link{ private Node root;//the head node public void addNode(String data){ Node newNode = new Node(data); if(this.root == null){ this.root = newNode; }else{ this.root.add(newNode);//method add() is defined in class Node. } } public void printNode(){ if(this.root != null){ this.root.print(); } } public boolean contains(String name){ return this.root.search(name); } public void deleteNode(String data){ if(this.contains(data)){ if(this.root.data.equals(data)){ this.root = this.root.next; }else{ this.root.next.delete(root, data); } } } //inner class Node,将节点进行封装,方便以后的调用,而不用由用户手工去处理各个节点的关系。 class Node{ private String data; private Node next; public Node(String data){ this.data = data; } public void add(Node newNode){//add node but no data if(this.next == null){ this.next = newNode; }else{ this.next.add(newNode);//迭代的方法 } } public void print(){//迭代输出 System.out.println(this.data); if(this.next != null){ this.next.print(); } } public boolean search(String data){ if(data.equals(this.data)){ return true; }else{ if(this.next != null){ return this.next.search(data); }else{ return false; } } } public void delete(Node previous, String data){//可以把previous理解为头指针 if(data.equals(this.data)){ previous.next = this.next; }else{ if(this.next != null){ this.next.delete(this, data); } } } } }public class Test12_1 { public static void main(String args[]){ Link l = new Link(); l.addNode("A"); l.addNode("B"); l.addNode("C"); System.out.println("=====================before delete================"); l.printNode(); l.deleteNode("B"); System.out.println("==================deleted=================="); l.printNode(); System.out.println(); System.out.println("searse node: "+l.contains("A")); }}
用Java实现单向链表相关推荐
- java实现单向链表
一.单向链表的结构. (1).首先节点的结构,其中包含本节点内容,以及需要指向下一个节点. Java代码 private static class Entry<E>{ E e; Entry ...
- Java实现单向链表基本功能
一.前言 最近在回顾数据结构与算法,有部分的算法题用到了栈的思想,说起栈又不得不说链表了.数组和链表都是线性存储结构的基础,栈和队列都是线性存储结构的应用- 本文主要讲解单链表的基础知识点,做一个简单 ...
- Java实现单向链表——精简
文章目录 引言 实现思路 添加元素 插入元素 删除元素 查找元素 更新元素 显示链表 实现代码(完整) 总结 留言 引言 链表是一种重要的数据结构.它的存储空间是不连续的,单向链表是最简单的一种链表. ...
- java集合单向链表_Java实现单向链表数据结构
本文章同步到本人的博客站点 燕归来 链表是一种数据结构,和数组同级.比如,Java中我们使用的ArrayList,其实现原理是数组.而LinkedList的实现原理就是链表了.链表在进行循环遍历时效率 ...
- java实现单向链表的增、删、改、查
单向链表 作者:vashon package com.ywx.link; /*** 单向链表* @author vashon**/ public class LinkTest {public stat ...
- java简单单向链表_用java简单的实现单链表的基本操作
packagecom.tyxh.link;//节点类 public classNode {protected Node next; //指针域 protected int data;//数据域 pub ...
- java简单单向链表_【新手自白书】简单单项链表的实现(JAVA)
复习一下简单单项链表的实现. 在动手写链表之前,需要思考链表是如何组成的,一般来说,一个简单的单项链表主要是由节点构成,由于链表的特性,头节点是一个十分重要的成员,所以,链表必须的成员是节点Node, ...
- 【java】Java实现单向链表反转
1.概述 转载:https://www.jb51.net/article/136185.htm 遇到了这个问题,记录一下 2.案例1 2.1 实现思路 递归:从尾部开始处理 非递归:从头部开始处理 2 ...
- 反转单向链表java_Java实现单向链表反转
本文实例为大家分享了Java实现单向链表反转的具体代码,供大家参考,具体内容如下 1.实现代码 public class LinkedListTest { public static void mai ...
最新文章
- python插入排序演示源码
- 放射科医生选择AI供应商的10大标准
- Serverless在游戏、电商行业的一个运用场景示例
- 开源 java CMS - FreeCMS2.3员
- 新书《深入理解Kafka:核心设计与实践原理》上架,感谢支持~
- JS动态添加span等标签
- 如何打开pr_debug调试信息
- Spring Cloud 中的@FeignClient注解中的contextId属性
- UVA 993 Product of digits
- 需要掌握的flex知识点
- 物联网培训总结(C#)
- 如何恢复Windows自动更新?
- Java动态读取map里面的key值
- SCI英文论文写作- Latex 进阶
- IMAX China去年实现扭亏为盈;华为助力打造成都智算中心;Quantinuum和IBM壮大量子生态系统 | 全球TMT...
- java电影院购票系统概况_电影院售票管理系统
- 卸载wps后,安装完office 2010 图标异常,类型未识别问题
- 后端返回JSON数组转Tree树形格式,展示到element-ui的tree树形组件
- Tekton Pipeline 教程
- maven 配置多个仓库
热门文章
- 三容水箱液位控制系统_三容水箱液位控制系统的建模及仿真.doc
- glnxa64 matlab 什么版本_Matlab R2018a无法重新加载 /usr/local/MATLAB/R2018a/bin/glnxa64/libmwxcp_dwarf.so...
- java 并发任务_java 并发 - 运行多个任务并执行第一个结果
- linux下详解shell中/dev/null 21
- 《深入理解ElasticSearch》——2.4 批量操作
- squidguard实现
- linux下的包和RPM管理
- WinDbg+SOS:Web服务器High CPU Hang(100%)实例分析
- css animation动画完成后隐藏_如何使用CSS实现旋转地球动画效果
- python监听文件更改记录_如何用机器人监听老板微信?