Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

HELLO I GET THIS ERROR WHEN I WRITE THIS JAVA CODE WHEN I RUN IT IN UBUNTU TERMINAL CAN YOU TELL ME THE SOLUTION OR

HELLO I GET THIS ERROR WHEN I WRITE THIS JAVA CODE WHEN I RUN IT IN UBUNTU TERMINAL

CAN YOU TELL ME THE SOLUTION OR FIX THE CODE IF THERE IS A MISTAKE IN IT

image text in transcribed

package mergesortthread;

import java.util.logging.Logger; import java.util.logging.Level;

public class MyMergeSort {

// Variables to hold the input and temp arrays private int[] inputs; private int[] temp; private int inputLength;

/** * Sorts the input array using the merge sort algorithm * @param inputValues the input array to sort * @throws InterruptedException */ public void sort(int[] inputValues) throws InterruptedException { inputs = inputValues; inputLength = inputValues.length; temp = new int[inputLength]; mergeSort(0, inputLength - 1); }

/** * Recursive method that performs the merge sort algorithm * @param lo the lower index of the current subarray * @param hi the upper index of the current subarray * @throws InterruptedException */ private void mergeSort(int lo, int hi) throws InterruptedException { // Base case: if the subarray has only one element, it is already sorted if (lo >= hi) { return; }

// Calculate the middle index of the subarray int mid = lo + (hi - lo) / 2;

// Sort the left and right parts of the subarray in separate threads Thread tLeft = new Thread(new MergeSortThread(lo, mid, this)); Thread tRight = new Thread(new MergeSortThread(mid + 1, hi, this)); tLeft.start(); tRight.start(); tLeft.join(); tRight.join();

// Merge the two sorted parts of the subarray merge(lo, mid, hi); }

/** * Merges two sorted parts of the array * @param lo the lower index of the left part of the array * @param mid the upper index of the left part and the lower index of the right part of the array * @param hi the upper index of the right part of the array */ private void merge(int lo, int mid, int hi) { // Copy the elements of the input array to the temp array for (int i = lo; i

// Initialize the indices for the left, right, and merged parts of the array int iLeft = lo; int iRight = mid + 1; int iMerged = lo;

// Merge the two parts of the array by comparing their elements while (iLeft

// Copy the remaining elements of the left part of the array while (iLeft

/** * Main method to test the merge sort implementation * @param args * @throws InterruptedException */ public static void main(String[] args) throws InterruptedException { // Input array int[] array = new int[10];

// Fill the input array with descending values for (int pos = 0; pos

// Measure the time taken to sort the array long inputStart = System.currentTimeMillis();

// Sort the array new MyMergeSort().sort(array);

long inputEnd = System.currentTimeMillis();

// Print the sorted array for (int i = 0; i

// Print the time taken to sort the array System.out.println(" Time taken: " + (inputEnd - inputStart) + "ms"); } }

class MergeSortThread implements Runnable {

// Variables to hold the lower and upper indices of the subarray private final int first; private final int last; private MyMergeSort myMergeSort;

/** * Constructor * @param f the lower index of the subarray * @param l the upper index of the subarray */ public MergeSortThread(int f, int l, MyMergeSort m) { this.first = f; this.last = l; this.myMergeSort = m; }

/** * The method to run when the thread is started */ @Override public void run() { try { myMergeSort.mergeSort(first, last); } catch (InterruptedException ieEx) { Logger.getLogger(MergeSortThread.class.getName()).log(Level.SEVERE, null, ieEx); } } }

ubuntu@ubuntu: / Desktop $ javac MyMergeSort.java MyMergeSort. java:146: error: mergeSort(int, int) has private access in MyMergeSort myMergesort.mergeSort(first, last); 1 error ubuntu@ubuntu: Desktop\$

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access with AI-Powered 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

Students also viewed these Databases questions