검색어 입력폼
평가점수A

Huffman code 프로그램, 허프만코드 프로그램

저작시기 2006.05 |등록일 2006.09.07 | 최종수정일 2017.08.08 한글파일한글 (hwp) | 11페이지 | 가격 10,000원

소개글

그리디(Greedy) 알고리즘중 허프만 코드 알고리즘을 클래스로 구현한 내용입니다.
특정문자의 빈도수를 입력받아 특정문자에 해당하는 코드의 길이를 유동적으로 정함으로써
데이터를 압축할때 사용하는 알고리즘입니다.
클래스를 이용하여 구현하였으며, 데이터구조는 힙소트 방식입니다.
주석도 충분히 달려있고 동작내용도 스크린샷을 통해서
첨부가 되어있는 보고서입니다.

목차

1. 소스
2. 프로그램 동작 및 사용법(스크린샷 첨부)

본문내용

1. 소스
main source file : huffmancode.cpp
header file : huffclass.h
class define file : huffclass.cpp

★ huffmancode.cpp
#include <stdio.h> // printf()사용
#include <conio.h> // gets(), getch() 사용
#include "huffclass.h" // huffcode, minheap class 사용

#define instrsize 10 // 입력받는 문자열의 크기.

void input(class minheap &queue); // 입력받아 Queue에 저장.
bool is_continue(char *instring); // 입력 종료 여부 확인. quit 문자열 확인.
bool convert(char * instring,char &inchar,int &freq); // 입력받은 문자열을 문자와 빈도수로 나눔.

int main()
{
class huffcode head; // huffcode class의 head 선언
class minheap queue; // minheap class선언
input(queue); // 입력받음

head.buildtree(queue); // 입력받은 것을 huffmantree로 구성
if (head.outfreq()==0) // head에 빈도수가 0이면 하위 원소가 없음.
{
printf("입력한 문자수가 너무 적습니다.\n");
getch();
return 0;

참고 자료

자료구조및알고리즘
다운로드 맨위로