单链表的面试题
1)求单链表中有效节点个数
如果是带头节点的链表,需求不统计头结点
public class Main {
public static void main(String[] args) {
HeroNode heroNode=new HeroNode(1,"a","a");
HeroNode heroNode2=new HeroNode(2,"b","b");
HeroNode heroNode3=new HeroNode(6,"c","c");
HeroNode heroNode4=new HeroNode(4,"d","d");
SinleLinkedList sinleLinkedList=new SinleLinkedList();
sinleLinkedList .add2(heroNode);
sinleLinkedList .add2(heroNode2);
sinleLinkedList .add2(heroNode3);
sinleLinkedList .add2(heroNode4);
System.out.println(sinleLinkedList.getlen(sinleLinkedList.getHead()));
}
}
//定义SingleList
class SinleLinkedList{
//初始化
private HeroNode head=new HeroNode(0,"","");
public HeroNode getHead(){
return head;
}
//求单链表中有效节点个数
public int getlen(HeroNode head){
int len=0;
HeroNode cur=head;
while (cur.next!=null){
len++;
cur=cur.next;
}
return len;
}
}