DATA STRUCTURE(3)
-
Linked list[c]
○ Structure of Linked listNode - Data field[저장할데이터] - Link field[다른 노드를 가리키는 포인터저장] - Head pointer : 첫번째 노드를 가르키는 변수마지막 노드링크필드는 NULL[더 이상 연결된 노드없음] ○ Array vs Linked list Array 배열은 인덱스를 가지고 있기때문에 원하는 데이터에 한번에 접근이 가능 -> 데이터 접근 속도 빠름 배열은 논리적인 순서에 따라서 순차적으로 데이터를 입력하고 물리적 주소도 순차적임 데이터를 삽입,삭제 시에 linked list 처럼 새로운 데이터가 필요할때 마다 동적으로 공간을 못 만듬[새로운 배열을 생성해야됨] 데이터의 삽입, 삭제가 거의 없고 데이터 접근이 많을 겅우 유리함 Linked l..
2022.04.09 -
괄호검사문제[스택]
스택의 구조를 잘 파악할수있는 대표적인 문제인 괄호검사 문제입니다 조건 왼쪽 괄호의 개수와 오른쪽 괄호의 개수가 같아야 됨 같은 종류의 괄호에서 왼쪽 괄호는 오른쪽 괄호보다 먼저 나와야 됨 서로 다른 종류의 왼쪽 괄호와 오른쪽 괄호의 쌍은 서로를 교차하면 안됨 스택구조 ( (3) pop('(' == ')') [ (2) [ (2) [ (2) pop('[' == ']') { (1) { (1) { (1) { (1) { (1) pop('{' == '}') 괄호검사를 하게 되면 위 스택의 구조처럼 됩니다 스택은 FIFO구조로 가장 최근에 온 데이터가 가장 먼저 나가게 됩니다 왼쪽 괄호인 (1), (2), (3)이 push()함수를 통해서 순차적으로 스택에 쌓이게 되며 오른쪽 괄호가 나오면 스택에서 가장 나중에 들..
2022.03.05 -
재귀함수 하노이
조건 A -> C로 이동 한번에는 하나의 원판만 이동 맨 위에 있는 원판만 이동가능 크기가 작은 원판위에 큰 원판이동X 중간의 막대를 임시적으로 이용가능 재귀함수의 대표적인 문제로 코드는 간단하지만 동작하는 원리가 많이 복잡한 문제입니다 https://shoark7.github.io/programming/algorithm/tower-of-hanoi 링크에서 구체적으로 설명을 잘해놓아서 참고해서 공부하면 좋을것같습니다
2022.02.25