Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Convert this to a Java Eclipse program, any help is appreciated!!:) Description: This Homework builds on Homework 1 by using important building blocks for Java
Convert this to a Java Eclipse program, any help is appreciated!!:)
Description: This Homework builds on Homework 1 by using important building blocks for Java programs-arrays, classes, and methods. Homework 3 does this by adding operational and implementation requirements to those already present in Homework 1 . These additional requirements define Ris 0.2. Other than these requirements, Ris 0.2 must satisfy all requirements of Ris 0.1. Operational Issues: In contrast to Ris 0.1, Ris 0.2. will read and store all data before sending any output to System out. Once the data is read in and checked for duplications etc. (as described in Homework 1), the data will be sent to System out in reverse publication order and added a summary. Note that you do not have to sort the data. Ris 0.2 will print them in reverse order, which means the last publication should be on first, and the first publication will be last. Also, note that the order of the tags will remain unchanged. Finally, note that all errors (duplicate DOs) will be sent to System out before any records are sent there. It is important to note that the SM tag will be slightly updated as follows: SM - UniqueCount: ..., NumOfAuthors: ..., LongestTagValue: ..., MostKW: (...), AuthorsPublications: (...). AuthorsPublications should be added to SM tag. It is the number of publications in the references.ris file for the authors of this publication. A publication can also have many authors. Thus, the authors' summary must have all counts for all authors by separating authors with commo as follow (author 1:x, author2:y,author 3:z ). It is important to note that there will be more than one publication of authors in the file. Therefore, you need to consider all publications in the file. The output example for a publication will be like this: TY - CONF TI - Optimal trade-off between accuracy and network cost of distributed learning in Mobile Edge Computing: An analytical approach T2 - 2017 IEEE 18th International Symposium on A World of Wireless, Mobile and Multimedia Networks (WoWMoM) SP - 1 EP 9 AU - L. Valerio AU - A. Passarella AU - M. Conti PY - 2017 KW - Cloud computing KW - Distributed databases KW - Data analysis KW - Analytical models KW - Mobile communication KW - Data mining KW - Data models DO - 10.1109/WoWMoM.2017.7974310 JO - 2017 IEEE 18th International Symposium on A World of Wireless, Mobile and Multimedia Networks (WoWMoM) IS - SN - VO VL - JA - 2017 IEEE 18th International Symposium on A World of Wireless, Mobile and Multimedia Networks (WoWMoM) Y1 - 12-15 June 2017 ER - SM - UniqueCount:13, NumOfAuthors:3, Longest TagValue:TI, MostKW: (data:3), AuthorsPublications: (L. Valerio:1, A. Passarella: 1, M. Conti: 1) Moreover, you need to print the summary of how many lines your program read, how many publications, how many unique publications in the memory, and how many unique authors in the unique publications are at the end as like (example not correct numbers) Data lines read: 27847; All Publication read: 1217; All Unique Publication: 450, All Unique Authors Count: 1000. Implementation Issues: In addition to the implementation requirements from Homework 1, you must use arrays, class, and at least one method in this assignment. Arrays will be used to store the data. Note that the memory for array size must be dynamically allocated because in many cases, it is not possible to know how much data will be found in a file at the time your code is written. Therefore, it is important to know how to allocate memory dynamically. Ris 0.2 must initially allocate enough space to hold the data for 10 ris publications. As it reads the file, if that allocation proves to be insufficient, Ris 0.2 will ask for a new allocation twice that large (using new), copy the old data to the new space, and send old the old data space to the garbage collector. You may call System.gc() to request the garbage collector to remove it if needed and continue reading from the file. If that allocation also proves to be insufficient, Ris 0.2 will repeat the doubling, copying, and resuming process, continuing in this way until the entire file is read in. This process of dynamically doubling the array size as the data is read must be modularized within a method. This method must be tested and shown to work correctly using unit tests that will be included in your test bench, as well as work in the final integrated program. This method will be named "doublePublicationArray" and its required signature follows: Publication [] doublePublicationArray(Publication [] currentPublicationArray) The data for each ris publication will be stored in a structure named "Publication," which is defined as follows: Class Publication \{ Pair[] tagAndValues = new Pair [100];// holds the Pair data \} Class Pair \{ String tag; // holds the tag String value; // holds the value for the tag \} The array of records will be defined as an array of records in your program as Publication [] data; // array of publications You must use good programming style and documentation, including making your code modular, using explanatory comments for each section of code, using meaningful variable and method names, using consistent indentation, etc. You may write your program from scratch or start from programs for which the source code is freely available on the web or through other sources (such as friends or student organizations). If you do not start from scratch, you must give a complete and accurate accounting of where your code came from and indicate which parts are original or changed and which you got from which source(s). Failure to give credit where credit is due is academic fraud and will be dealt with accordingly. You may use existing classes and data structures (such as vectors) in your code for reading and parsing the input data. However, the doublePublicationArray function must be written from scratch for arrays
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started