ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [30일코딩] LinkedList
    개발입문/JAVA 2017. 5. 7. 20:09

    Day 15. LinkedList 에서는

    Data Structure 에서 알고리즘을 직.접. 짜보는 시간을 가졌다.


    어떻게 구현되는지 살짝 맛보기에 가까운 강의였는데~

    그래도 뭔가 신기하고 신났다! (신난다신난다!) 


    컴공에서는 데이터 구조론이라는 과목으로 방대하게 배운다던데

    주변 개발자들이 그거 학부때 공부하는 거 아니에요? 라고 일침하길래..

    제대로 공부하는건 당분간은 미뤄두려고 한다. 


    본론 고고!!




    Linked List


    is a data structure

    that consists of a group of nodes

    which represent a sequence together



    LinkedList 는 기차칸이 총 N 개인 기차이다.
    각 기차칸 (노드) 는 이렇게 일련의 순서를 가지고 연결되어있다.

    1번 기차칸은 2번 기차칸과 연결되어있고
    2번 기차칸은 3번 기차칸과 연결되어있다 (...) 

    각 기차칸은 데이터와 그다음 기차칸을 가리키는 레퍼런스를 가지고 있다!








    노드 Node

    데이터 최소 단위 ( like atomic unit )
    자료구조는 노드 간의 연관관계에 따라 다르게 구현된다.
    Node 는 기본적으로 데이터와 다음 노드에 대한 레퍼런스를 가진다.
    - head(시작노드), current(인덱스), temp(처리해야 되는 대상)


        public static Node insert(Node head, int data) {
            
            Node current;
            Node temp = new Node(data);
            
            if (head==null) {
                head = temp;
                
            } else {
                current = head;
                while(current.next!=null) {
                    current = current.next;
                }
                current.next = temp;
                
            }
            
            return head;
        }



    LinkedList 메소드는

    API 보면서 익숙해져야지 :3


    LinkedList

    - add(E e), add(int index, E element)

    - get(int index)

    - set(int index, E element)

    - indexOf(Object o)

    - remove(int index), remove(Object o)

    - clear()


    http://docs.oracle.com/javase/8/docs/api/java/util/LinkedList.html

    '개발입문 > JAVA' 카테고리의 다른 글

    [30일코딩] Queue and Stack  (0) 2017.05.07
    [30일코딩] Exception  (0) 2017.05.07
    [30일코딩] 범위 Scope  (0) 2017.05.07
    [30일코딩] Abstract Class 추상클래스  (0) 2017.05.07
    [30일코딩] Inheritance 상속  (0) 2017.05.07

    댓글

Designed by Tistory.