Sponsored Links


Results 1 to 2 of 2

Thread: CS502 Fundamentals of Algorithms Assignment No. 03 solution 20th January 2016

  1. #1
    Administrator Vuhelper's Avatar
    Join Date
    Apr 2011
    Posts
    9,578

    11 CS502 Fundamentals of Algorithms Assignment No. 03 solution 20th January 2016

    Sponsored Links1


    Part 1:

    Suppose you are working in an office and want to send a large size text document to your boss via email. Your file is too large for sending as an email attachment as your email service provider allows you to send files only up to a certain size limit.

    To cope with this issue, you decided to use Huffman encoding algorithm to compress your document size. Given below is the frequency table for characters used in that document.
    Character
    Frequency
    A
    25
    D
    10
    M
    30
    S
    15
    T
    3
    Y
    55










    Your Task:

    Your task is to Create Huffman encoding tree using greedy approach.






    10 Marks
    Part 2:
    In this part, you are provided with working code of Huffman algorithms huffman.cpp. The code is self explanatory and comments are added where necessary. This is a very nice, simple and powerful algorithm for compression.
    We have applied this algorithm on two sample statements to get its encoded text. Output for both statements is given below.
    You can see input statements and its associated results. Both input statements have same size (448 bits) but size of encoded text is different. You can verify the same results by running given code.
    You need to understand the working of Huffman Algorithm. Attached C++ code will help.
    You are required to explain the reasons behind difference in encoding/compression results. The first statement “A quick brown…” having size 448 bits was compressed to 259 bits after encoding. While the second statement “admission success…” having same size (448 bits) was compressed to 198 bits after encoding.

  2. #2
    Administrator Vuhelper's Avatar
    Join Date
    Apr 2011
    Posts
    9,578
    Solution :

    Sponsored Links

    ypically characters are encoded by fixed length binary words. ASCII code uses 8 bits and Unicode uses 16 bits. Huffman encoding uses variable bit length words to encode the characters. Characters used more frequently have smaller length. In this way the encoding of string can be smaller then with fixed length words.
    The Huffman code uses a binary tree to describe the code. Each letter of the alphabet is located at an external. The bit encoding is the path from the root to the letter with moving to the left child generating a 0 and moving to right child generating a 1. If we are actually using the tree to encode the text then we would need an additional locater structure. Normal one would make a lookup table and use the tree only to construct/determine the code. The tree is a satisfactory structure to decode.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. CS502 Fundamentals of Algorithms Assignment No. 04 Solution July 2014
    By vuassignments in forum Assignments & Solutions
    Replies: 3
    Last Post: 07-25-2014, 01:52 AM
  2. Replies: 2
    Last Post: 05-20-2014, 03:37 PM
  3. Replies: 0
    Last Post: 04-24-2013, 09:50 PM
  4. Replies: 1
    Last Post: 01-28-2013, 03:19 PM
  5. Replies: 0
    Last Post: 01-23-2012, 10:25 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
-: Vuhelp Disclaimer :-
None of the files shown here are hosted or transmitted by this server. The links are provided solely by this site's users. The administrator's or staff of Vuhelp.net cannot be held responsible for what its users post, or any other actions of its users. You may not use this site to distribute or download any material when you do not have the legal rights to do so. It is your own responsibility to adhere to these terms. If you have any doubts about legality of content or you have any suspicions, feel free to contact us.
Online Education | JhelumSoft | Jobs