联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-21:00
  • 微信:codinghelp

您当前位置:首页 >> Java编程Java编程

日期:2020-07-30 11:06

CSE 104 – Data Structures & Algorithms

Department of Computer Science and Software Engineering, Xi’an Jiaotong-Liverpool University

CSE104 RESIT Coursework

Learning Outcomes

On successful completion of this assignment, students are expected to:

- understand and be able to apply a variety of data structures, together with their

internal representation and algorithms;

- be able to make informed choices between alternative ways of implementation,

justifying choices on grounds such as time and space complexity;

- be able to select, with justification, appropriate data structures to ensure efficient

implementation of an algorithm.

To Do: Design and code a Java program that:

1. Requests from the user for a text filename to read the text inside, then it counts the

frequency of each letter that file contains. There is no need to differentiate between upper and

lower cases while punctuation marks are ignored. For this assignment purpose, the text file

should be named as “Huff_in” with only letters inside. The program’s frequency table output

should be like this:

2. Based on the frequency table derived, a ternary Huffman codebook manager is

implemented in your program that produces as output a codebook (in tabular format) that

encodes letters based upon an input frequency table while the code generated should consume

minimum bandwidth using these for codes: {0, 1, 2}, e.g. symbol ‘e’ is encoded as ‘0’, ‘a’

as ‘12’, ‘c’ as ‘112’, etc.

3. Corresponding ternary Huffman encoder & decoder are also implemented that carry

out the encoding or decoding task based upon ternary codes received and a codebook as part

of input. The encoder encodes input letters based on the specified codebook. The decoder

will decode letters from ternary codes received using the codebook.

Coursework Submission

You should submit your Java program code files together with your report to the

entry I provided on ICE. The submitted program solution should be well commented

together with another 4-page report with a file name “Report.pdf” or “Report.doc” (or

docx).

The report should not exceed 4 pages, without counting your .java files submitted

separately from this report) with the module title and your name/student number & signed

CSE 104 – Data Structures & Algorithms

Department of Computer Science and Software Engineering, Xi’an Jiaotong-Liverpool University

declaration for non-plagiarism shown on the title page. Your report should motivate &

explain your data structure(s), what data structures/algorithms (rendered in pseudo code)

you have designed & why they are used, and how they are tested in your programs. You

should also analyse the space complexity (i.e. memory costs) of your data structures and the

time complexity of your algorithms developed (i.e. cost of running time asymptotically).

Marking

The mark distribution (100% total) is arranged as follows:

1. Correctness, efficiency, conciseness, & readability of your codes worth up to 75%:

codebook manager 25%, encoder 25%, decoder 25%

2. Your report worth up to 25%.

This assignment: 100% of the RESIT marks.


版权所有:编程辅导网 2021 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp