本文共 2116 字,大约阅读时间需要 7 分钟。
//定义单链表 private static class SignalLink{ int data; SignalLink next; SignalLink(){ } SignalLink(int data){ this.data=data; } }
//初始化链表 private static SignalLink addLink(int [] arr,SignalLink link){ SignalLink head=link; SignalLink tmp =new SignalLink(0); if (head==null) head=tmp; int i=0; while (i
//打印链表 private static void printLink(SignalLink link){ SignalLink head=link; int i=1; while (head!=null){ System.out.println("第"+i+"个数是"+head.data); head=head.next; i++; } }
//指定插入数据到链表 private static SignalLink insertData(SignalLink link, SignalLink dataLink,int target){ SignalLink head =link; int len =getLen(link); if(len<1||target>len+1){ System.out.println("原链表不满足条件!"); return link; } else if(target==1){ SignalLink insert=dataLink; insert.next=head; return dataLink; } else{ int i=1; while (i
//指定位置删除链表数据 private static SignalLink delIndex(SignalLink link, int index){ if(index==0||index>getLen(link)){ System.out.println("指定删除失败不在范围内!"); return link; } else if(index==1){ SignalLink head=link; head=head.next; return head; } else{ int i =1; SignalLink head=link; while(i
public static void main(String[] args) { //初始化链表 SignalLink link=addLink(new int[]{ 1, 6, 9, 12},new SignalLink()); System.out.println("***************初始化的链表为***********************"); printLink(link); //指定位置插入数据 System.out.println("***************指定位置插入数据的链表为***************"); printLink( insertData(link,new SignalLink(100),2)); //指定位置删除数据 System.out.println("***************指定位置删除数据的链表为***************"); printLink(delIndex(link,4)); }
转载地址:http://yrqzi.baihongyu.com/