Java学习之链表
数据结构学了,java实现下
package com.gh.Link;
/**
* 链表的实现
* @author ganhang
*
*/
public class Links {
public static void main(String[] args) {
NodeManage nm=new NodeManage();
nm.add("节点1");
nm.add("节点2");
nm.add("节点3");
nm.add("节点4");
nm.add("节点5");
nm.add("节点6");
nm.add("节点7");
nm.add("节点8");
nm.add("节点9");
nm.add("节点10");
nm.print();
nm.delete("节点3");
nm.print();
}
}
package com.gh.Link;
/**
* 链表管理(增删查)
* @author ganhang
*
*/
public class NodeManage {
private Node root; public void add(String name) {
if (root == null) {
root = new Node(name);
} else {
root.addNode(name);
}
} public void delete(String name) {
if (root != null) {
if (root.name.equals(name)) {
root = root.next;
} else {
root.delNode(name);
}
}
} public void print() {
if(root!=null){
System.out.print(root.name);
root.printNode();
System.out.println();
}
} class Node {//内部类实现根节点下节点的操作
private String name;
private Node next; public Node(String name) {
this.name = name;
} public void addNode(String name) {
if (this.next == null) {
this.next = new Node(name);
} else {
this.next.addNode(name);
}
} public void delNode(String name) {
if (this.next != null) {
if (this.next.name.equals(name)) {
this.next = this.next.next;
} else {
this.next.delNode(name);
}
}
}
public void printNode() {
if(this.next!=null){
System.out.print("-->"+this.next.name);
this.next.printNode();
}
}
}
}
Java学习之链表的更多相关文章
- Java学习笔记--链表
心在山东身在吴,飘蓬江海漫嗟吁. 他时若遂凌云志, 敢笑黄巢不丈夫. --水浒传 先上源代码,LinkedList类: private static class Node<E> { E i ...
- java学习之—链表(4)
/** * 使用链表实现队列 * Create by Administrator * 2018/6/19 0019 * 下午 4:37 **/ public class Link { public l ...
- java学习之—链表(3)
/** * 使用链表实现队列 * Create by Administrator * 2018/6/19 0019 * 下午 4:37 **/ public class Link { public l ...
- java学习之—链表(2)
/** * 双端链表操作 * Create by Administrator * 2018/6/14 0014 * 下午 2:05 **/ class Link1 { public long dDat ...
- java学习之—链表(1)
/** * 单链表操作 * Create by Administrator * 2018/6/14 0014 * 下午 2:05 **/ public class Link { public int ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
- 第八周java学习总结
学号 20175206 <Java程序设计>第八周学习总结 教材学习内容总结 第十五章:泛型与集合框架 主要内容 泛型 链表 堆栈 散列映射 树集 树映射 重点和难点 重点:泛型和集合的使 ...
- java学习(五)
学号 20189214 <Java程序设计>第五周学习总结 教材学习内容总结 输入输出 文件系统可以包含3种类型的对象:文件.目录和符号链接. 一个文件或路径是一个java.io.File ...
- 20165236 第六周Java学习总结
20165236 第六周Java学习总结 一. 第八章内容: 1.String 类: String对象.常量对象:字符串并置: 常用方法: length,equals,startsWith,compa ...
随机推荐
- ceph启动脚本
放在/etc/init.d/目录下,用法如下: root@u253:~# /etc/init.d/ceph === mon.a === usage: /etc/init.d/ceph [options ...
- Jquery 方法大全
一.JQuery常用的方法 :(JQuery中90%都是方法,没有参数是获取,带参数是设置) $("#id").css('backgroundColor','blue'); .cs ...
- hdu2141
题目大意:输入三系列数A,B,C,输入一个数X,问是否在A,B,C中存在A[i]+B[j]+C[k]=X,存在输出YES,不存在输出NO. 本题若果采用暴力法那么复杂度为O(n3)显然会超时,如果把A ...
- mybatis+postgresql平台
mybatis+postgresql平台 最近有个项目的数据库使用postgresql,使用原生态的mybatis操作数据,原生态的没什么不好,只不过国内有个tk.mybatis的工具帮 ...
- ubutu下的几个命令
nginx重启命令 (ps:意为将nginx重启) /usr/local/nginx/sbin/nginx -s reload 给new目录权限设置为777 (ps:意思为将wwwroot/new目录 ...
- Loggerly技术架构
https://www.loggly.com/blog/topic/log-management-technology/
- S50卡
产品名称:Mifare 1K(S50)卡 芯片类型:Philips Mifare 1 IC S50 存储容量:8Kbit,16个分区,每分区两组密码 工作频率:13.56 MHz 通讯速率:106KB ...
- Protel99se教程四:将SCH转为PCB文件
本节课,我们介绍,如何快速的将绘制好的SCH文件转为PCB文件,首先,我们打开刚开始时我们绘制的SCH原理图,我们可以使用protel99se菜单栏的view-Fit All Objects命令,以查 ...
- HDU 1294 Rooted Trees Problem
题目大意:求有n个节点的树有几种? 题解:http://www.cnblogs.com/keam37/p/3639294.html #include <iostream> typedef ...
- 在windows系统中安装hadoop
1.安装Cygwin 从http://www.cygwin.com/ 下载cygwin的setup.exe,双击运行: 选择从Internet安装: 设置安装目录: 设置安装包目录: 设置“Inter ...