java单向链表的实现实例
packagencu.com.app.chatpter_5;
importjava.util.Random;
//结点类
classNode{
Objectdata;
Nodenext;
}
//操作类
classListNode{
publicNodefirst;
publicintsize;
publicListNode(){
first=null;
size=0;
}
publicvoidinsertNode(Objectnode){
Nodeno=newNode();
no.data=node;
no.next=first;
first=no;
size++;
}
publicvoiddisPlay(){
if(size==0){
System.out.println("链表为空");
}
Nodecurrnode=first;
while(currnode!=null){
System.out.print(currnode.data+",");
currnode=currnode.next;
}
System.out.println("");
}
//删除i个结点
publicvoiddelect(inti){
if(i<=size){
for(intm=0;m<i;m++){
first=first.next;
size--;
disPlay();
}
}
}
//清空链表
publicvoiddelectAll(){
size=0;
first=null;
disPlay();
}
//获得从i-j中链表的数据
publicvoidgetNode(inti,intj){
for(intm=0;m<i-1;m++){
first=first.next;
}
Nodecurrnode=first;
for(intm=0;m<j-i+1;m++){
System.out.print(currnode.data+",");
currnode=currnode.next;
}
}
}
publicclassNodeTree{
publicstaticvoidmain(Stringargs[]){
ListNodelistnode=newListNode();
for(inti=0;i<10;i++){
intk =newRandom().nextInt(10);
listnode.insertNode(k);
System.out.print(k+",");
}
System.out.println("");
listnode.disPlay();
//listnode.delect(10);
//listnode.delectAll();
listnode.getNode(2,8);
}
}
相关文章
- java calendar计算时间差_Java Calendar 计算时间差
- java反转数组_Java实现数组反转翻转的方法实例
- java 链表长度_Java实现单向链表[通俗易懂]
- eclipse中导入Java文件「建议收藏」
- java控制台输入数组_Java控制台输入数组并逆序输出的方法实例
- 【说站】java中instanceof运算符是什么
- java定时器实例_Java定时器小实例
- native2ascii java_Native2Ascii和Ascii2Native的Java实现
- JAVA静态内部类_java静态内部类实例化
- java 内部类 静态方法调用_内部类和静态内部类的调用「建议收藏」
- java读写文件操作工具类详解编程语言
- Java移位运算符详解实例编程语言
- Linux调用Java实现编程快速开发(linux调用java)
- Linux安装Java环境必备指南(linux装java)
- 处理Redis Java: 解决过期问题(redisjava过期)
- 数据处理Java中利用Redis优雅地处理过期数据(redisjava过期)
- Linux下搭建 Java 开发环境(linux搭建java环境)
- Java轻松处理Redis缓存(java处理redis)
- 如何在Linux系统中正确配置Java?(linux下配置java)
- Java 开发提升Oracle数据库性能(java开发oracle)
- Java使用选择排序法对数组排序实现代码
- java实现汉字转unicode与汉字转16进制实例
- Java基于直方图应用的相似图片识别实例