반응형

전체 글 2934

[디딤돌 자료구조와 알고리즘] 5.4.1 스택 설계, 5.4.2 스택 구현, 5.4.3 스택 테스트

5.4.1 스택 설계, 5.4.2 스택 구현, 5.4.3 스택 테스트 5.4.1 스택 설계 스택도 연결리스트를 래핑하여 만들게요. 연결리스트 형식을 스택 형식으로 타입 재지정합니다.#include "LinkedList.h"typedef LinkedList EHStack; 동적으로 스택을 생성하는 함수와 소멸하는 함수를 제공합시다.EHStack *New_EHStack();void Delete_EHStack(EHStack *ehs); 스택에 자료를 보관하는 함수와 꺼내는 함수를 제공합시다.void EHStack_Push(EHStack *ehs, Element data);Element EHStack_Pop(EHStack *ehs); 스택이 빈 상태인지 확인하는 함수도 제공합시다. int EHStack_IsEm..

[디딤돌 자료구조와 알고리즘] 5.4 스택 (STACK)

5.4 스택(STACK) 스택은 큐와 달리 가장 최근에 보관한 자료를 먼저 꺼내는 후입선출(LIFO, Last In First Out)형태로 동작하는 자료구조입니다. 스택은 배열이나 연결리스트로 구현할 수 있어요.여기에서는 배열로 구현하는 것을 먼저 해 본 후에 미리 만든 연결리스트를 래핑하는 방법을 살펴보아요. 먼저 스택 구조체를 정의하세요.스택에는 저장소와 가장 최근에 보관한 위치를 멤버로 갖고 있어야 해요. #define STACK_SIZE 10typedef struct Stack //Stack 구조체 정의{ int buf[STACK_SIZE];//저장소 int top; //가장 최근에 보관한 인덱스}Stack; 스택에는 보관하는 동작을 Push라 부르고 꺼내는 동작을 Pop이라 불러요.void P..

[디딤돌 자료구조와 알고리즘] 5.3.2 큐 구현 , 5.3.3 큐 테스트

5.3.2 큐 구현, 5.3.3 큐 테스트 5.3.2 큐 구현 먼저 동적으로 큐를 생성하는 함수를 작성합시다.EHQueue *New_EHQueue(){ 여기서 설계한 큐는 연결 리스트이므로 연결리스트를 동적으로 생성하여 반환합니다. 이처럼 이미 작성한 기능을 이용하여 전달하는 역할만 하는 함수를 래퍼(Wrapper) 함수라고 부릅니다. return New_LinkedList();} 동적으로 생성한 큐를 소멸하는 함수도 래퍼 함수로 작성합니다.void Delete_EHQueue(EHQueue *ehq){ Delete_LinkedList(ehq);} 큐에 자료를 보관하는 함수도 연결리스트에 순차 보관하는 함수를 호출하는 래퍼 함수로 작성합니다.void EHQueue_Put(EHQueue *ehq, Eleme..

[디딤돌 자료구조와 알고리즘] 5.3.1 큐(QUEUE) 설계

5.3.1 큐(QUEUE) 설계 여기에서는 연결리스트를 큐로 감싸(Wrapping)하여 선입선출(FIFO, First In First Out)방식으로 자료를 보관 및 꺼내기 동작을 제공하도록 설계할게요.#include "LinkedList.h"typedef LinkedList EHQueue; 큐를 설계할 때 내부에 자료를 보관하는 저장소를 배열로 만드는 방법도 있는데 이미 만들어진 연결리스트를 이용하여 자료를 보관하게 정의하면 저장소의 한계가 없는 큐를 만들 수 있습니다. 물론 메모리의 한계까지 없는 것은 아닙니다. 일반적으로 대학에서 배우는 큐는 자료를 보관하는 저장소를 정적 크기의 배열로 정의하는 큐를 배우고 꽉 찼을 때의 처리에 관한 고민을 합니다. 특히 이 문제를 원형 큐 형태로 만들어 문제를 해..

[디딤돌 자료구조와 알고리즘] 5.3 큐(QUEUE)

5.3 큐(QUEUE) 이번에는 큐를 알아보기로 해요.큐는 순차적으로 자료를 보관하고 가장 최근에 보관한 자료를 꺼내는(FIFO, First In First Out) 버퍼예요. 여기에서는 버퍼의 크기가 정적인 배열로 정의하는 것을 먼저 구현할 거예요.그리고 난 후에 이미 작성한 연결리스트를 이용하는 큐를 만들기로 해요. 배열로 큐를 정의할 때 자료를 보관하는 버퍼 외에 자료를 보관할 위치와 꺼낼 인덱스를 기억하고 있어요.보관할 위치는 맨 뒤에 보관해서 rear라고 부르고 꺼낼 위치는 맨 앞이어서 front라 불러요.그리고 큐에 자료를 보관하는 행위를 EnQueue 혹은 Put이라 불러요.큐에서 자료를 꺼내는 행위는 DeDueue 혹은 Get이라 불러요.그리고 배열로 큐를 구현할 때는 큐가 비었는지 혹은 ..

9. 툰드라 지역의 주민 생활 [중1 사회]

9. 툰드라 지역의 주민 생활 [중1 사회] 툰드라 지역의 기후 기온이 가장 높은 달의 평균 기온이 10˚C 미만이며 강수량이 적어서 나무가 거의 자랄 수 없는 환경입니다.겨울은 영하 50˚C까지 내려가는 매우 추운 날씨이며 눈과 얼음으로 뒤덮입니다. 극야 현상이 발생합니다.0˚C 이상인 여름 기간은 2~3개월 정도로 짧고 이끼류나 지의류가 성장하며 백야 현상이 발생합니다. 툰드라 지역의 주민 생활 가옥폐쇄적 가옥 구조이며 붕괴되는 것을 막기 위한 고상 가옥이 발달하였습니다.이동식 천막이나 임시 가옥인 얼음집(이글루)가 발달하였습니다. 음식육류 중심으로 날고기나 날생선을 즐깁니다.온도가 낮아 냉동이나 훈제, 염장, 건조 방식으로 식량 저장술이 발달하였습니다. 농목업농업이 불가능하여 수렵이나 어로, 채집 ..

교육/중1 사회 2016.05.23

8. 건조 지역의 주민 생활 [중1 사회]

8. 건조 지역의 주민 생활 [중1 사회] 건조 지역의 자연 환경 기후연 강수량이 500mm 미만입니다. 연 강수량에 따라 사막 기후 지역과 스텝 기후 지역으로 구분합니다.강수량보다 증발량이 많아 건조합니다.밤에는 춥고 낮에는 더워 일교차가 큰 지역입니다. 사막 기후 지역 기후연 강수량이 250mm 미만인 지역 지역 분포남북회귀선 부근과 대륙의 내륙, 한류가 흐르는 해안 지역 등에 분포합니다. 자연모래, 자갈, 바위로 이루어진 사막 지대로 선인장 외에 식생이 빈약합니다. 가옥 형태흙으로 지운 집이 많고 일교차가 크기 때문에 벽이 두껍고 창문이 작습니다.연 강수량이 적어 지붕이 평평한 형태를 지닙니다.그늘 형성을 위해 건물 사이의 간격이 좁습니다. 농목업물을 구할 수 있는 오아시스나 외래 하천 주변에서 대..

교육/중1 사회 2016.05.23

[pcap 파일 분석기 만들기 wich C언어] 5. 패킷 분석기 예광탄 - ARP 프로토콜 스택 분석

5. 패킷 분석기 예광탄 - ARP 프로토콜 스택 분석 안녕하세요. 언제나 휴일, 언휴예요. 이전 게시글에서는 pcap 파일의 IPv4 프로토콜 스택 분석하는 부분을 추가했어요. 현재까지 PCAP 파일 포멧 분석 및 ethernet 프로토콜 스택과 IPv4 프로토콜 분석하였습니다.[pcap 파일 분석기 만들기 wich C언어] 1. pcap 파일 구조 분석[pcap 파일 분석기 만들기 wich C언어] 2. 패킷 분석기 예광탄 - 패킷 개수 및 바이트 수 출력[pcap 파일 분석기 만들기 wich C언어] 3. 패킷 분석기 예광탄 - ethernet 프로토콜 스택 분석[pcap 파일 분석기 만들기 wich C언어] 4. 패킷 분석기 예광탄 - IPv4 프로토콜 스택 분석 이번에는 ARP 프로토콜 스택 헤..

[python] 11. 리스트에 자료를 추가하기

[python] 11. 리스트에 자료를 추가하기 안녕하세요. 언제나 휴일, 언휴예요. 이전 게시글에서 리스트와 TUPLE의 차이점을 간략하게 알아보았어요.[python] 10. 파이썬을 잘 사용하기 위한 첫 걸음, 리스트를 소개합니다. 이번에는 리스트에 요소를 추가하는 방법들을 알아보기로 해요. 파이썬의 리스트는 자료를 순차적으로 보관할 때 사용하는 append 함수를 제공하고 있어요. 그리고 특정 인덱스에 보관할 때 사용하는 insert 함수를 제공합니다. 이 외에 extend 함수를 사용하여 리스트에 다른 리스트의 요소들을 추가하는 것을 할 수 있어요. append 함수를 이용하여 순차 보관Python 3.5.0 (v3.5.0:374f501f4567, Sep 13 2015, 02:16:59) [MSC..

[pcap 파일 분석기 만들기 wich C언어] 4. 패킷 분석기 예광탄 - IPv4 프로토콜 스택 분석

4. 패킷 분석기 예광탄 - IPv4 프로토콜 스택 분석 안녕하세요. 언제나 휴일, 언휴예요. 지난 게시글에서는 pcap 포멧 파일을 로딩하여 ethernet 프로토콜 스택을 분석하는 예광탄을 만들어 보았어요.[pcap 파일 분석기 만들기 with C언어] 1. pcap 파일 구조 분석[pcap 파일 분석기 만들기 wich C언어] 2. 패킷 분석기 예광탄 - 패킷 개수 및 바이트 수 출력[pcap 파일 분석기 만들기 with C언어] . 패킷 분석기 예광탄 - ethernet 프로토콜 스택 분석 이번에는 IPv4 프로토콜 스택 분석하는 부분을 작성할 거예요. [네트워크 및 보안/TCPIP 프로토콜] - IPv4 빨간색으로 테두리 안에 있는 내용이 이번에 추가한 기능에 의해 출력하는 부분이예요. 현재 작..

반응형