Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Using My Matric Id : 191022310 - Create a complete Program based on the question given with no errors - program must be in C

image text in transcribed

image text in transcribed

Using My Matric Id : 191022310 - Create a complete Program based on the question given with no errors - program must be in C program

Task 1: Random number generation - Create a random number generator to create a list of unique integers (each number must appear only once). The code for this generator can be obtained from the internet. It must be able to generate at least 300 integers (no repeated numbers) by using your matric ID as a seed generator. Write the pseudocode of the function in your report. Task 2: Sorting Implementation - Implement merge sort, and quick sort to sort a list of integers. The code for these algorithms can be obtained from the internet (e.g., http://www.geeksforgeeks.org). However, detail remarks (comments) by using your own words are required to be provided in the code to show your understanding of the code. Each function must be accompanied by comments.* Extra mark will be given if you implement additional sorting algorithms (e.g., shell sort ,insertion sort etc for this task). Task 3: Complexity Analysis - Theoretically discuss and compute the complexity of all sorting algorithms that you implemented. The discussion will describe your understanding of the algorithm. Put the complexity on a table as shown in Table 1 and Execution Time (in milliseconds) as shown in Table 2. Table 1: Complexity Analysis Algorithm Algorithm 1 Algorithm 2 Complexity Ollog n) O(n) Table 2: Execution Time (in milliseconds) Algorithm 1 Algorithm 2 Algorithm 100 integers 200 integers 300 integers Task 4: Testing - Create a main function which is able to call the number generator and all algorithms. Apply the testing procedure: Sorting i) By using the function from Task 1, generate 100 unique integers. Output the list in a 100data.txt or 100data.csv file. ii) Read the integers from the file in an array or linked list. Apply the algorithms to Task 3 to sort the list. Record the time taken by each of the algorithms as shown in Table 2. iii) Repeat the process with 200 and 300 unique integers. Task 5: Writing Report - Write the report. The report must contain The description of each function in the code (the input, output, what it does, a reference to the source of the code if you get the code from the internet). ii) The complexity analysis (using Big O notation) and the time taken (in milliseconds) to execute your number generator and each sorting algorithms in your program (see Table 1 and Table 2). lii) Discussion if you have a better idea of how sorting can be made more efficient than the algorithms that you used in this assignment. iv) Include the following statement at the first page of your report: Task 1: Random number generation - Create a random number generator to create a list of unique integers (each number must appear only once). The code for this generator can be obtained from the internet. It must be able to generate at least 300 integers (no repeated numbers) by using your matric ID as a seed generator. Write the pseudocode of the function in your report. Task 2: Sorting Implementation - Implement merge sort, and quick sort to sort a list of integers. The code for these algorithms can be obtained from the internet (e.g., http://www.geeksforgeeks.org). However, detail remarks (comments) by using your own words are required to be provided in the code to show your understanding of the code. Each function must be accompanied by comments.* Extra mark will be given if you implement additional sorting algorithms (e.g., shell sort ,insertion sort etc for this task). Task 3: Complexity Analysis - Theoretically discuss and compute the complexity of all sorting algorithms that you implemented. The discussion will describe your understanding of the algorithm. Put the complexity on a table as shown in Table 1 and Execution Time (in milliseconds) as shown in Table 2. Table 1: Complexity Analysis Algorithm Algorithm 1 Algorithm 2 Complexity Ollog n) O(n) Table 2: Execution Time (in milliseconds) Algorithm 1 Algorithm 2 Algorithm 100 integers 200 integers 300 integers Task 4: Testing - Create a main function which is able to call the number generator and all algorithms. Apply the testing procedure: Sorting i) By using the function from Task 1, generate 100 unique integers. Output the list in a 100data.txt or 100data.csv file. ii) Read the integers from the file in an array or linked list. Apply the algorithms to Task 3 to sort the list. Record the time taken by each of the algorithms as shown in Table 2. iii) Repeat the process with 200 and 300 unique integers. Task 5: Writing Report - Write the report. The report must contain The description of each function in the code (the input, output, what it does, a reference to the source of the code if you get the code from the internet). ii) The complexity analysis (using Big O notation) and the time taken (in milliseconds) to execute your number generator and each sorting algorithms in your program (see Table 1 and Table 2). lii) Discussion if you have a better idea of how sorting can be made more efficient than the algorithms that you used in this assignment. iv) Include the following statement at the first page of your report

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database Design Application Development And Administration

Authors: Mannino Michael

5th Edition

0983332401, 978-0983332404

More Books

Students also viewed these Databases questions