반응형

자료구조 3

[C 자료구조] Linked Lists - Inserting a Node Into a Sorted Doubly Linked List

0) 제목Hackerrank 의 Linked Lists 부분의 Inserting a Node Into a Sorted Doubly Linked List 문제입니다.C언어를 이용하여 풀었습니다.1) 문제설명Doubly Linked List 에서 데이터를 오름차순으로 넣는 문제입니다.데이터와 Linked Lists의 헤드가 파라미터로 주어집니다.주어진 파라미터를 이용해서 적절한 위치에 새 노드를 삽입하는 문제입니다.2) 풀이과정새 노드를 동적할당을 이용하여 만들고, 현재 노드가 empty리스트 인지 검사 후 새 노드가 들어갈 적절한 위치를 찾아주었습니다.찾은 위치가 맨 앞일때, 맨 뒤일때, 가운데 일때를 구분하여서 구현했습니다. 3) 코드 12345678910111213141516171819202122232..

[C 자료구조] Queue - Queue using Two Stacks

0) 제목Hackerrank 의 Queue 부분의 Queue using Two Stacks 문제입니다.C언어를 이용하여 풀었습니다. 1) 문제설명두개의 Stack을 가지고 Queue를 구현을 하는 문제입니다. 2) 풀이과정두개의 Stack을 가지고 Queue를 구현을 하는 문제입니다.동적할당으로 구현했습니다.Queue에서 dequeue했을때,Main Stack의 데이터들을 모두 pop 해서 Sub Stack에 push하는 방식으로 데이터 순서를 바꿨습니다.그리고 나서 Sub Stack의 맨위 데이터를 pop 해서 dequeue를 구하고,다시 Sub Stack에 있는 데이터를 모두 pop하고 Main Stack으로 push해서 데이터 순서를 돌렸습니다.두개의 스택으로 구현하라고 하여서 제가 생각한 방법은 ..

[C 자료구조] Stack - Maximum Element

0) 제목Hackerrank 의 Stack 부분의 Maximum Element 문제입니다.C언어를 이용하여 풀었습니다. 1) 문제설명처음 input으로 N을 받습니다. 그 다음 N개의 쿼리문을 입력받는데,1 - push2 - pop3 - peek인 규칙으로 쿼리문을 받으라고 설명에 나와있습니다. 2) 풀이과정동적할당을 이용하여 스택에 사용하는 배열의 크기를 지정해줬습니다.초기에 입력받은 N에 의해서 쿼리의 갯수가 정해진다고 했을때,push의 최대값(최대로 사용할 용량 크기)이 N이라고 생각했기 떄문에,동적할당을 이용했습니다. 3) 코드123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525..

반응형