package com.coding.basic; public class LinkList implements List{ private Node head; //ͷ��㲻������� private static class Node{ Object data; Node next; } @Override public void add(Object o) { //��һ��û���뵽 if(null == head){ head = new Node(); head.next = null; head.data = o; }else{ //β���뷨 //Node t = new Node(); Node t; Node ins = new Node(); t = head; while(t.next != null){ t = t.next; } t.next = ins; ins.next = null; ins.data = o; } } @Override public void add(int index, Object o) { if(index < 0 ){ System.out.println("Error"); }else if(index == 0 || index == 1){ Node t = new Node(); t.next = head.next; head.next = t; t.data = o; }else{ Node t = new Node();//��ǰ�ڵ� Node p = new Node();//ǰһ���ڵ� t = head.next; for(int i = 1;i < index;i++){ p = t; t = t.next; } Node ins = new Node(); p.next = ins; ins.next = t; ins.data = o; } } @Override public Object get(int index) { if(index < 0 || head == null){ System.out.println("Error"); return null; }else{ Node t ; t = head; for(int i = 1;i < index;i++){ t = t.next; } return t.data; } } @Override public Object remove(int index) { return null; } public void display(){ if(head == null){ System.out.println("No Data"); }else{ Node t ; t = head; while(t != null){ System.out.println("******"+t.data); t = t.next; } } } @Override public int size() { return 0; } }