• 통큰쿠폰이벤트-통합

자료구조론 프로젝트2 기말프로젝트 인하대

puturum
개인인증판매자스토어
최초 등록일
2021.08.31
최종 저작일
2021.01
12페이지/ MS 워드
가격 2,000원 할인쿠폰받기
다운로드
장바구니

소개글

"자료구조론 프로젝트2 기말프로젝트 인하대"에 대한 내용입니다.

목차

Ⅰ. Problem

Ⅱ. Solutions(Source code and results)
1. 헤더 file (huff.h)
2. 구현 file (huff.cpp)

Ⅲ. Discussions

본문내용

1. 헤더 file (huff.h)

우선 헤더파일부터 살펴보자. 문제의 조건대로 huff라는 클래스를 사용해서 구현했다. 허프만 트리를 위해 HFNode구조와 각 원소들 element 그리고 heap구조를 이용하기 위해 Heap을 선언했다. huff클래스의 public에는 허프만 코드 작성을 위한 멤버함수들을 선언해주었다. 각각의 기능은 코드의 주석으로 작성해놓았다.

2. 구현 file (huff.cpp)

이제 구현부를 살펴보자. 우선 헤더파일을 include했다. Newheap 함수는 새로운 heap 메모리를 할당한다. initializeHeap 함수는 입력 받은 heap을 초기화한다. insert 함수는 heap에 새로운 element e를 삽입하는 함수인데, min heap으로 구현했기 때문에 최상단에 가장 작은 값이 들어가야한다. 따라서 트리를 거슬러 올라가며 부모 노드와 key(빈도수)를 비교한다. while 루프를 돌면서 부모 노드의 key와 비교하며 더 작은 값이면 부모 노드로 올라간다. 루프를 빠져나오면 현재 위치에 삽입하려는 e를 넣는다.

Removemin 함수는 heap에서 가장 작은 원소를 삭제하는 함수로 삭제하는 동시에 그 원소를 반환한다. heap의 최소값 삭제 알고리즘을 살펴보면 최상단에 최하위 노드의 값을 저장하는 동시에 최하위 노드를 삭제하며 down heap을 진행한다. min heap이기 때문에 최상단에 최소값이 있고 따라서 반환할 최상단의 값을 e에 저장해두고 최하위의 가장 큰 값을 temp에 저장한다. temp가 최상단에 있다고 가정하고 비교할 child를 설정한다. 왼쪽 오른쪽 child중 작은 자식과 비교해야 한다. parent를 1로 child를 2로 설정했기 때문에 child는 왼쪽 자식을 가리키게 된다. 32번 라인을 보면 우선 child가 heap크기보다 클 수 없기 때문에 while문의 조건으로 32번 라인을 넣었고 33번은 오른쪽 자식이 있을 경우를 위해 작성한 라인이다.

참고 자료

없음
puturum
판매자 유형Bronze개인인증
소개
인하대 정보통신공학
전문분야
등록된 전문분야가 없습니다.
판매자 정보
학교정보
비공개
직장정보
비공개
자격증
  • 비공개

주의사항

저작권 자료의 정보 및 내용의 진실성에 대하여 해피캠퍼스는 보증하지 않으며, 해당 정보 및 게시물 저작권과 기타 법적 책임은 자료 등록자에게 있습니다.
자료 및 게시물 내용의 불법적 이용, 무단 전재∙배포는 금지되어 있습니다.
저작권침해, 명예훼손 등 분쟁 요소 발견 시 고객센터의 저작권침해 신고센터를 이용해 주시기 바랍니다.
환불정책

해피캠퍼스는 구매자와 판매자 모두가 만족하는 서비스가 되도록 노력하고 있으며, 아래의 4가지 자료환불 조건을 꼭 확인해주시기 바랍니다.

파일오류 중복자료 저작권 없음 설명과 실제 내용 불일치
파일의 다운로드가 제대로 되지 않거나 파일형식에 맞는 프로그램으로 정상 작동하지 않는 경우 다른 자료와 70% 이상 내용이 일치하는 경우 (중복임을 확인할 수 있는 근거 필요함) 인터넷의 다른 사이트, 연구기관, 학교, 서적 등의 자료를 도용한 경우 자료의 설명과 실제 자료의 내용이 일치하지 않는 경우

이런 노하우도 있어요!더보기

최근 본 자료더보기
유니스터디 이벤트
자료구조론 프로젝트2 기말프로젝트 인하대
  • 아이템매니아 이벤트
  • 유니스터디 이벤트
AI 챗봇
2024년 09월 11일 수요일
AI 챗봇
안녕하세요. 해피캠퍼스 AI 챗봇입니다. 무엇이 궁금하신가요?
6:14 오후
문서 초안을 생성해주는 EasyAI
안녕하세요. 해피캠퍼스의 방대한 자료 중에서 선별하여 당신만의 초안을 만들어주는 EasyAI 입니다.
저는 아래와 같이 작업을 도와드립니다.
- 주제만 입력하면 목차부터 본문내용까지 자동 생성해 드립니다.
- 장문의 콘텐츠를 쉽고 빠르게 작성해 드립니다.
9월 1일에 베타기간 중 사용 가능한 무료 코인 10개를 지급해 드립니다. 지금 바로 체험해 보세요.
이런 주제들을 입력해 보세요.
- 유아에게 적합한 문학작품의 기준과 특성
- 한국인의 가치관 중에서 정신적 가치관을 이루는 것들을 문화적 문법으로 정리하고, 현대한국사회에서 일어나는 사건과 사고를 비교하여 자신의 의견으로 기술하세요
- 작별인사 독후감
방송통신대학 관련 적절한 예)
- 국내의 사물인터넷 상용화 사례를 찾아보고, 앞으로 기업에 사물인터넷이 어떤 영향을 미칠지 기술하시오
5글자 이하 주제 부적절한 예)
- 정형외과, 아동학대