목차
없음
본문내용
pop()
{
return stack[top--];
}
void print()
{
int i;
for(i=0;i<=top;i++)
printf("stack[0]=%d\n",stack[i]);
}
2)(★★) 위의 프로그램의 stack은 10개만 저장가능하다. 더 많은 데이터를 stack에 넣으면 무슨일이 벌어지나?
3) (★★★)문제 2)의 경우를 예방하기 위해서 코드에서 변경해야 할 부분을 작성하시오.
void push()
{
}
int pop()
{
}
7. (총★수 : )다음은 스택 응용에 관한 것이다.
1)(★★) 1*2-6/3을 후위표기법으로 변환 과정 설명(절차설명, 스택으로 과정 설명)
2)(★★) 1)에서 구한 후위표기법을 스택을 이용하여 최종 값을 계산하시오.
8. (총★수 : )다음은 queue에 관한 문제이다. 최대 5개를 저장하는 queue의 경우에 대해서 다음 물음에 답하시오.
1)(★★) 10, 20, 30 ,40을 큐에 삽입하고 10, 20, 30, 40을 삭제하고 , 50을 삽입하는 경우를 그림으로 단계별로 설명하시오.
(Front, Rear변수를 중심으로 설명)
2) 다음 프로그램은 제일 간단한 큐 프로그램을 구현한 것이다. 각 부분을 설명하시오.
#include "stdio.h"
void enQ(int data); int deQ(); void printQ();
①(★★)
int queue[10];
int front=0,rear=0;
int main()
{
enQ(10);
enQ(20);
enQ(30);
printQ();
printf("queue에서 가져온 값=%d\n",deQ());
printQ();
}
②(★★)
void enQ(int data)
{
queue[rear++]=data;
}
③(★★)
int deQ()
{
return queue[front++];
}
④(★★)
void printQ()
{
int i;
printf("\n-----------queue------------\n");
for(i=front;i<=(rear-1);i++)
printf("%d ",queue[i]);
printf("\n----------------------------\n");
}
3) (★★★)위 프로그램은 queue가 비어있을 경우와 queue가 배열 크기를 넘어설 때 처리하는 내용이 없다. 이 부분을 추가하시오.
void enQ(int data)
{
}
int deQ()
{
}
{
return stack[top--];
}
void print()
{
int i;
for(i=0;i<=top;i++)
printf("stack[0]=%d\n",stack[i]);
}
2)(★★) 위의 프로그램의 stack은 10개만 저장가능하다. 더 많은 데이터를 stack에 넣으면 무슨일이 벌어지나?
3) (★★★)문제 2)의 경우를 예방하기 위해서 코드에서 변경해야 할 부분을 작성하시오.
void push()
{
}
int pop()
{
}
7. (총★수 : )다음은 스택 응용에 관한 것이다.
1)(★★) 1*2-6/3을 후위표기법으로 변환 과정 설명(절차설명, 스택으로 과정 설명)
2)(★★) 1)에서 구한 후위표기법을 스택을 이용하여 최종 값을 계산하시오.
8. (총★수 : )다음은 queue에 관한 문제이다. 최대 5개를 저장하는 queue의 경우에 대해서 다음 물음에 답하시오.
1)(★★) 10, 20, 30 ,40을 큐에 삽입하고 10, 20, 30, 40을 삭제하고 , 50을 삽입하는 경우를 그림으로 단계별로 설명하시오.
(Front, Rear변수를 중심으로 설명)
2) 다음 프로그램은 제일 간단한 큐 프로그램을 구현한 것이다. 각 부분을 설명하시오.
#include "stdio.h"
void enQ(int data); int deQ(); void printQ();
①(★★)
int queue[10];
int front=0,rear=0;
int main()
{
enQ(10);
enQ(20);
enQ(30);
printQ();
printf("queue에서 가져온 값=%d\n",deQ());
printQ();
}
②(★★)
void enQ(int data)
{
queue[rear++]=data;
}
③(★★)
int deQ()
{
return queue[front++];
}
④(★★)
void printQ()
{
int i;
printf("\n-----------queue------------\n");
for(i=front;i<=(rear-1);i++)
printf("%d ",queue[i]);
printf("\n----------------------------\n");
}
3) (★★★)위 프로그램은 queue가 비어있을 경우와 queue가 배열 크기를 넘어설 때 처리하는 내용이 없다. 이 부분을 추가하시오.
void enQ(int data)
{
}
int deQ()
{
}
추천자료
[자료구조] max heap
[자료구조] BFS&DFS&BST
자바 자료구조 족보
(자료구조) 큐를 이용한 환상형 연결리스트 삽입 & 삭제 소스
(자료구조) 스레드 이진트리 중위운행 결과 소스
(자료구조) 트리를 이용한 비순환적 중위운행 결과 소스
힙 자료구조를 이용한 상입,제거(특정 토큰에 대해)
리스트 자료구조를 이용한 상입,제거(특정 토큰에 대해)
[자료구조]Infix로 된 수식을 Prefix와 Postfix로 변환 시키는 프로그램입니다.(C언어)
[자료구조] 배열을 이용한 다항식의 덧셈 곱셈 연산
[자료구조]다익스트라 최단 경로 알고리즘
[자료구조]포인터 배열 삽입 정렬
[자료구조] 정렬되지 않는 배열 (우선 순위 큐)
[자료구조] 연결 리스트를 이용한 오름차순 정리