노드

 

각각의 노드는 데이터 필드와 하나 혹은 그 이상의

링크 필드로 구성

링크 필드는 다음노드를 참조

첫번째 노드의 주소는 따로 저장해야함

 

package section6;

public class Node<T> {
	
	public T data;
	public Node<T> next;
	
	public Node(T data){
		this.data = data;
		next = null;
	}
	
}

노드 클래스

T 타입의 데이터변수,

다음 노드의 주소값을 가지는 변수 

를 가진다.

package section6;

public class MySingleLinkedList<T> {
	
	public Node<T> head;
	public int size = 0;
	
	public MySingleLinkedList() {
		head = null;
		size = 0;
	}
	
	public void addFirst(T item) {
		Node<T> newNode = new Node<T>(item);
		newNode.next = head;
		head = newNode;
		size++;
	}
	
	public void add(int index, T item) { //insert
		
	}
	
	public void remove(int index) { //delete
		
	}
	
	public T get(int index) {  //get
		return null;
	}
	
	public int indexOf(T item) { //search
		return -1;
	}
	
	public static void main(String[] args) {
		
	}

}

연결리스트 클래스 

아직 전부 구현하지는 않았지만 

첫번째 노드를 가리키는 주소변수,

총 사이즈를 체크하는 변수와

 

노드들이 있을때 첫번째 노드에 새로운 노드를 추가하는

함수를 구현해보았다.

하지만 이 함수에는 큰 문제가 있다.

기존의 연결리스트의 크기가 0인경우, head가 null인

경우에도 문제가 없는지 확인해야한다.

+ Recent posts