반응형 Python216 Queue - C와 Python 비교 - 2 지난 원형큐 설명에 이어 deque(덱 큐)에 대해 설명하겠다. 덱 큐는 원형큐에 비해 매우 파워풀하다. 원형큐는 front가 삭제 rear가 삽입으로 정해져 있었다면 그에 비해 덱큐는 front와 rear가 모두 삭제와 삽입이 자유롭다는 것이다. 사실 이는 덱이라고 불리지만 원형큐로 구현하면 시간복잡도가 O(1) 이기 때문에 효율적이다. 그래서 덱큐라고 명칭한다. 덱큐와 원형큐가 다른 점은 앞서 말했듯이 front와 rear가 모두 삭제가 가능하다는 것이다. 이를 구현하기 위해선 원형큐에선 시계방향의 회전만 했다면 덱큐는 반시계방향 회전을 한다. 이로 인해 delete_rear와 add_front가 구현될 수 있다. 덱큐는 원형큐를 상속하여 구현해보겠다. 일단 python코드이다. # 덱큐 -> 원형큐.. 2020. 7. 13. ADP 실기 후기(복기 포함) 드뎌 꿈에 그리던 ADP 실기를 봤다. 어떤 난이도인지 예상도 안됐고 기출문제도 전무후무하기 때문에 정말 가벼운 맘으로 시험보러 갔다. 하지만 그래도 난 붙겠지라는 근거 없는 자신감으로 차있었다. 시험 데이터만 딱 보고 내가 연습했었던 데이터가 나와서 할 만 하겠다라는 생각으로 문제지를 펼치고 코드를 적기 시작했다. 하지만 이는 곧 절망으로 이어졌다. 그래서 실기 시험이 끝난지 한 달 후에나 후기를 적는 것이다. 맨탈이 나갔었기 때문이다.. 본격적으로 후기를 시작하겠다. 나는 2020년 6월 21일 ADP 실기를 보러갔다. 종로에 있는 더조은 컴퓨터 학원? 그 곳에서 시험을 봤다. 전체적으로 시험장은 깔끔했다. 하지만 시험장 찾기가 조금 어려웠다. 시험장에 사람들이 들어오고 생각보다 연령층이 높다는 것을.. 2020. 7. 13. Queue - C와 Python 비교 Queue는 대표적인 FIFO(First In First Out) 알고리즘이다. 즉 선입선출으로 먼저 들어온 값이 먼저 나가는 구조이다. LIFO구조인 stack과 비교된다. 구조상으로 스택과 다른 점은 삽입과 삭제 연산의 위치가 다르다는 것이다. 스택은 맨 위에부터 꺼내 쓰고 꺼내서 빼는 구조로 삽입과 삭제 연산의 위치가 같지만 Queue는 앞뒤에 문이 있다고 생각하면 된다. 따라서 앞의 문은 front, 뒤에 문은 rear 이다. 삽입이 일어나는 곳은 rear, 삭제가 일어나는 곳은 front 이다. 기본적으로 큐의 종류는 선형큐,원형큐,덱큐,우선순위 큐가 있다. 이 중 가장 기본적으로 선형큐의 구현을 보여줘야하지만 선형큐는 다른 큐에 비해 비효율적인 면이 있다. 왜냐하면 삭제연산에서 리스트의 모든 .. 2020. 7. 13. Stack - C와 Python 비교(2) 스택의 예시로 많이 쓰는 것은 괄호 검사기이다. 프로그래밍을 하다보면 insert가 눌려져서 괄호가 하나씩 없거나 많아서 오류난 경험이 한 번 씩은 있을것이다. 이를 검사하는 프로그래밍을 할 것이다. 일단 C로 한 번 구현해보겠다. #include #include #define MAX_STACK_SIZE 100 typedef int element; typedef struct { element data[MAX_STACK_SIZE]; int top; }StackType; void init_stack(StackType* s) { s->top = -1; } int is_empty(StackType* s) { return (s->top == -1); } int is_full(StackType* s) { retur.. 2020. 7. 3. Stack - C와 파이썬 비교(1) 스택은 자료구조의 기본이라고 할 수 있다. 스택의 특징은 후입선출(LIFO)이다. 즉, 마지막에 들어간 것이 처음에 나온다고 생각하면 된다. 스택의 말 뜻처럼 쌓는다고 생각하면 편하다. 예를 들어 밑넓이는 좁고 높이가 긴 직육면체의 상자가 있다 생각해보자. 여기에 물건을 넣었을 때 맨 밑의 물건을 꺼내기 위해선 안에 있는 모든 물건을 빼야한다. 스택은 이런 것이다. 자세한 것은 밑의 링크를 참조하면 된다. https://ko.wikipedia.org/wiki/%EC%8A%A4%ED%83%9D 스택 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 스택(stack)은 제한적으로 접근할 수 있는 나열 구조이다. 그 접근 방법은 언제나 목록의 끝에서만 일어난다. 끝먼저내기 목록(Pushdo.. 2020. 7. 3. 파이썬 리뷰 http://www.yes24.com/Product/Goods/89141599 파이썬으로 쉽게 풀어쓴 자료구조 입문자들이 보다 쉽고 재미있게 자료구조를 공부하고 다양한 문제 해결에 활용할 수 있는 능력을 기르는데 초점을 맞추어 구성한 책이다. 지루하지 않고 내용을 보다 쉽게 이해할 수 있도록 적� www.yes24.com 이 책의 답지가 없으므로 이 책의 실습 문제를 선택적으로 풀어보겠다. 데이터 분석과는 크게 상관없는 것 같지만 자료구조는 프로그래밍의 기본이므로 하는 것이 좋다고 판단하여 이 책을 공부하였다. 사실 자료구조는 C로 수업을 들어서 이미 알고 있었는데 파이썬으로 구현하면 어떤 변화가 있을까라는 생각에 이 책을 구매하게 되었다. 지금까지 공부한 바로는 다른 언어에 비해 파이썬은 엄청나게 쉬운.. 2020. 7. 3. 이전 1 ··· 31 32 33 34 35 36 다음 반응형