반응형

IT/소스코드 24

[Java] Huffman Coding 2/2

공학수학2 / 2002년 2학기 / 박근수 교수님 [HuffmanTree.java] import java.io.*; /** 이곳이 HEAP을 구현한 부분입니다! **/ class Heap { public Heap() { size = 0; // 현재 heap내에 data는 0개 data = new Comparable[DEFAULT_CAPACITY+1]; // 어느정도 크기만큼 초기화 } public Heap(Comparable[] array) // array 내용을 바로 heap에 넣음 { size = array.length; // data의 갯수는 array길이만큼. data = new Comparable[array.length+1]; // array 길이보다 1 크게 초기화함. for (int i=0;..

IT/소스코드 2003.07.10

[Java] Huffman Coding 1/2

공학수학2 / 2002년 2학기 / 박근수 교수님 [설명] Huffman Coding : 각 문자의 Frequency를 이용한 텍스트 압축 Huffenc.java : 입력텍스트(Huffman.in)로부터 압축파일(Huffman.cmp)과 빈도파일(Huffman.frq) 생성 Huffdec.java : 압축파일과 빈도파일로부터 출력텍스트(Huffman.out) 생성 HuffmanTree.java : 코딩&디코딩에 사용되는 트리 [Huffenc.java] import java.io.*; class HuffOutputStream // 비트단위 출력을 담당하는 클래스 { public HuffOutputStream(OutputStream os) throws IOException { buffer = 0; // 한 ..

IT/소스코드 2003.07.10

[C++] Vigenere Cipher and Cryptanalysis

공학수학2 / 2002년2학기 / 박근수 교수님 [설명] Vigenere Cipher and Cryptanalysis : n만큼의 길이를 가지는 Key를 이용해 암호화. 그리고 그 Key 없이 암호분석. vigen.cpp : Key를 이용하여 Plaintext(vigen.in)를 Ciphertext(vigen.out)으로 바꿈. vigcr.cpp : Ciphertext로부터 Key를 유추하여 Plaintext(vigcr.out)을 만들어냄. vigen.in : 첫줄에는 Key가 있어야 함. Key는 반드시 대문자. 나머지 plaintext는 소문자. vigen.out : 실행시 자동 생성됨. Ciphertext. vigcr.out : 실행시 자동 생성됨. 정상적으로 동작할 경우 vigen.in과 같은 파..

IT/소스코드 2003.07.10
반응형