ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [2019 동계 모각코] 3차시 - 결과
    모여서 각자 코딩/2019 동계 모각코 2022. 3. 13. 00:03

    연결리스트를 이용한 stak구조 구현 & 응용

    연결리스트를 이용하여 stack구조를 구현한 클래스를 작성하고 그 클래스를 이용하여 사칙연산으로 이루어진 문자열을 입력받았을 때 괄호 쌍들의 인덱스 값을 반환하고 괄호쓰기가 맞는지 틀린지 결정하는 클래스를 작성한다.


     

    stack을 구현한 클래스는 연결리스트에 노드를 삽입하는 메소드와 노드를 삭제하고 값을 반환하는 메소드로 이루어진다.

     

    1) 삽입메소드 - add()

    : 제일 최근에 삽입된 노드를 head로 하여 삽입한다.

     

    2) 삭제메소드 - pop()

    : 제일 마지막에 삽입된 노드를 삭제하고 삭제한 노드의 값을 반환한다.

     

    사칙연산에서 괄호의 인덱스값과 괄호쓰기가 맞는지 결정하기 위한 클래스

    : 사칙연산을 입력받아 글자 하나씩 배열에 저장하고 반복문을 통해 괄호의 개수를 세서 괄호쓰기 여부를 출력한다.

    반복문을 배열의 길이만큼 돌리면서

    = '(' 괄호가 나오면 삽입 메소드를 이용해 인덱스 값으로 연결리스트를 만든다.

    = ')' 괄호가 나오면 삭제 메소드를 이용해 노드의 값인 인덱스 값과 ')'괄호의 인덱스 값을 동시에 출력한다.


    느낀점

    stack구조를 구현하는 것 자체는 이전에 DoubleLinkedList로 구현을 해봐서 어렵지는 않았다. 하지만 이 stack구조를 사칙연산 괄호 클래스에 사용하는 방법을 생각하는 것이 어려웠다. 자료구조를 구현하는 것 뿐만아니라 이 것을 적절하게 잘 활용하는것이 중요하다는 것을 많이 느꼈다.

    댓글

Designed by Tistory.