Programming 썸네일형 리스트형 연결리스트 ● 연결리스트 구조체의 멤버 안에 자기자신과 같은 노드를 가리키는 주소를 가지고 있어야 한다. -> 자기 참조 구조체 헤드노드라고 부르는 첫 번째 노드의 포인터가 중요하다. typedef struct list_node *list_pointer; struct list_node { char data[5]; list_pointer link; }; list_pointer ptr = NULL; ① 노드 삽입 void append(simple_pointer ptr, simple_pointer inode) { simple_pointer before; while ( ptr != NULL ) { before = ptr; ptr = ptr -> next; } before -> next = inode; inode -> ne.. 더보기 순차리스트 ● 스택 스택은 한쪽 끝에서만 삽입과 삭제 작업이 일어나므로 제일 나중에 들어온 원소가 제일 먼저 삭제되는 특성을 가지고 있다. ( LIFO : Last-in First-Out ) 초기 top의 값을 -1로 초기화 하는 것이 관건!! #define MAX_STACK_SIZE 100 int stack[MAX_STACK_SIZE]; int top = -1; //전역변수 if ( top == -1 ) -> 스택이 비어있는 상태 if ( top == MAX_STACK_SIZE-1 ) -> 스택이 꽉 차 있는 상태 ① 노드 삽입 void push(int item) { if (top >= MAX_STACK_SIZE - 1) printf("Stack is overflow !!!\n"); else { top++; st.. 더보기 자료구조/알고리즘 개념정리 ● 자료구조의 개념 특정 문제영역에서 개개의 자료들은 서로 연관관계를 가짐으로 문제해결을 용이하게 하는데 이러한 연관관계를 자료구조라 한다. ● 자료구조의 형태 ① 선형구조 - 순차리스트 : 배열, 행렬, 레코드 연결리스트 : 단순 연결 리스트, 이중 연결 리스트, 원형 연결 리스트 스택, 큐, 데크 ② 비선형구조 - 트리 : 일반 트리, 이진 트리 그래프 : 방향 그래프, 무방향 그래프 ③ 파일구조 - 순차 파일 직접 파일 색인순차 파일 ● 알고리즘의 개념 "어떤 문제를 해결해 나가는 특별한 방법", 또는 "문제의 해결을 위해 컴퓨터로 이용될 수 있는 명확한 방법"을 알고리즘이라 한다. ● 알고리즘의 조건 ① 입력 : 외부에서 제공되는 0개 이상의 입력자료가 존재해야 한다. ② 출력 : 적어도 하나 이.. 더보기 이전 1 2 3 4 다음