본문 바로가기

C5

[자료구조][스택] 중위 수식 변환 프로그램 c구현 목차 자료구조에서 스택을 활용한 후위 수식과 관련된 문제를 풀고 공부하고자 한다.   기본 스택 구조체(단항 연산자때문에 rank를 따로 만들어주었다.)typedef struct Node { char data; int rank; struct Node* next;}Node;typedef struct Stack { Node* head; Node* cur; int size;}Stack;  스택의 필요한 ADT// 스택 초기화 함수void init(Stack* s) { s->size = 0; s->head = (Node*)malloc(sizeof(Node)); s->head->next = NULL;}// 스택에 데이터를 추가하는 함수void push(Stack* .. 2024. 5. 5.
[자료구조][배열][스택] c 코드 구현 목차 자료구조를 공부하며 스택 구현을 배열로 해 보았다 -스택으로 구현할 ADT들-- push(stack, ‘c’) : stack의 top에 데이터를 추가한다. stack이 이미 꽉 차있으면 해당 데이터 는 스택에 저장하지 않고 “Stack FULL”을 출력한다. - pop (stack) : stack의 top에 있는 데이터를 반환하고 stack에서 제거한다. stack이 비어 있 으면 “Stack Empty”를 출력한다. - peek(stack): stack의 top에 있는 데이터를 화면에 출력한다. stack은 변화하지 않는다.  stack이 비어 있으면 “Stack Empty”를 출력한다. - duplicate(stack): stack의 top에 있는 데이터를 pop해서 두 번  push 한다. s.. 2024. 4. 28.
[자료구조][집합] c구현 재귀/ 반복문 목차 c언어를 공부 하는 겸 집합을 구현해 보고자 했다. 재귀를 이용한 방식과 반복문을 이용한 방식 두가지로 구현해 보았다. 문제 입력 예시 6 ↦ 집합 A 크기 3 7 45 88 99 101 ↦ 집합 A 4 ↦ 집합 B 크기 7 10 15 45 ↦ 집합 B 출력 예시 1 3 7 10 15 45 88 99 101 ↦ 합집합 7 45 ↦ 교집합 struct 구조 typedef struct Node { struct Node* next; int data; }Node; typedef struct List { Node* head; Node* cur; int size; }List; 반복문을 이용한 코드 //합 집합 구현 함수 List* Union(List* a, List* b) { List* list = (List.. 2024. 4. 16.
[단일 연결 리스트] [다항식의 덧셈] c구현 및 설명 목차 문제 다항식을 헤더 단일연결리스트 로 표현하고, 다항식의 덧셈을 구하는 프로그램을 작성하라. 입력에 대한 설명: 첫 번째 다항식의 항의 개수가 입력되고, 이후에 다항식의 각 항의 (계수, 지수) 쌍이 지수 의 내림차순으로 입력됨동일한 방식으로 두 번째 다항식의 정보가 입력됨 입력/출력 3 ↦ 첫 번째 다항식의 항의 개수 5 3 3 2 3 1 ↦ 5x^(3) + 3x^(2) + 3x 3 ↦ 두 번째 다항식의 항의 개수 2 6 2 3 1 0 ↦ 2x^(6) + 2x^(3) + 1 5x^(3) 3x^(2) 3x^(1) 2x^(6) 2x^(3) 1x^(0) 2x^(6) 7x^(3) 3x^(2) 3x^(1) 1x^(0) 노드의 구조 coef: 항의 계수 exp: 항의 차수 next: 다음 노드를 가리키는 링.. 2024. 4. 9.
728x90