Count Comparisons In Java Quick Sort
Oct 3, 2014
I have to count the comparisons in the quick sort. I have done it by using a global variable. But I am stuck in doing it recursively.
This is my code.
import static java.time.Clock.system;
import java.util.Arrays;
public class test {
/**
* The swap method swaps the contents of two elements in an int array.
*
* @param The array containing the two elements.
* @param a The subscript of the first element.
* @param b The subscript of the second element.
*
*/
[Code] .....
View Replies
ADVERTISEMENT
Feb 5, 2015
I have three sorting algorithms in which I must count the number of swaps/copies and comparisons. I am meant to only count the swaps and comparisons that involve anything other than indexes as they are too fast to really matter (according to the professor). My counters are in the right position or not. I keep coming up with swaps/comparisons that don't necessarily match the formulas I'm finding for best/worst case. Makes me think that my counters are somehow out of place or that I don't have enough of them.
Insertion Sort:
public class InsertionSort {
public static void insertionSorter(int[] array) {
int firstValue; // first value in array
int scan; // scan array through the array
int moves = 0; // number of moves
[Code] ....
View Replies
View Related
Oct 15, 2014
I have wriiten a quick sort algorithm. I have used the last element as my pivot. The program is running for all sizes except for 100000 and 1000000 elements when they are sorted and unsorted list .
It shows me the error : Exception in thread "main" java.lang.StackOverflowError
I guess the memory gets out of space and we need to increase the stack size in eclipse. How do I increase the stack size in eclipse.? I tried increasing through run--run configurations-- program arguments and typed---- -Xmx4096m but this didn't work in any way.
View Replies
View Related
Sep 14, 2014
So I'm trying to implement a quick sort method for an ArrayList of Strings and right now I'm getting the compiler error message: Exception in thread "main" java.lang.OutOfMemoryError: Java heap space. I don't know what that error means nor how to fix it. I've marked in my code where the error seems to be occurring.
import java.util.ArrayList;
public class quickSort
{
// constructor
public quickSort()
[code]....
View Replies
View Related
Feb 11, 2015
i'm currently going over single linked list, and i'm coming across an error which i do not know how to get by. I'm using single linked list for now just for study purposes, then i would move on to double.
Error: No enclosing instance of type LList is accessible. Must qualify the allocation with an enclosing instance of type LList (e.g. x.new A() where x is an instance of LList).
public class LList {
private static class Node<E>{
private E data;
private Node<E> next;
[code]....
View Replies
View Related
Apr 17, 2014
I want to generate a Hash key for a [ Nested Hierarchical nodes]. Any lightweight non-cryptographic hash map functions which generate a key, so that I can use this hashkey to comparison purposes.
NOTE: Security is not a concern for me, I just want to create a Unique ID.
View Replies
View Related
Sep 24, 2014
I am having a hard time getting some comparisons with Date to function correctly.I have a driver program and two classes, ZodiacDriver , ZodiacSign and ZodiacTable. In the driver program I build an arraylist of zodiacsigns in zodiactable. That all appears to be working I then pass a birthdate and the zodiac table to a method, determineSign. This is where I am having trouble. Right now Im just trying to match the incoming birthdate with a zodiac's date in the table. however no matter what date I enter, i get pisces, which happens to be at the bottom of the list. If I remove pisces from the list I get the current last zodiac. Here is my code:
ZodiacDriver
Java Code: package zodiac;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
[code]....
View Replies
View Related
Jun 30, 2014
I have an array with the following characters {'E', 'L','E','P','H','A','N','T','P','O'}
now, I need an array that will store the first array such that only the occurence occurs e.g {'E','L','P','H','A','N','T','O'} Notice that the characters 'E' and 'P' occur twice and as a result were not repeated the second time in the new array.
How would one go about this using the counting elements technique?
I tried this but not sure how to use the counting elements technique.
char [] arr = new char{'E', 'L','E','P','H','A','N','T','P','O'};
char[] bucket = new char[(arr[0] * arr.length)];
for (int i = 0; i < len; i++)
bucket[arr[i]]++;
View Replies
View Related
Apr 20, 2014
I have a HashSet, which I created to prevent duplicates upon output, but of course it's printing duplicates(or else I wouldn't be posting this). The order of my output does not matter, nor the input. The data type is String in the format (x + "," + z), where x and z are integers, creating a collection of coordinate sets. So to prevent the output of duplicates, I'm trying to get rid of the duplicates before they are added to the collection.
I've tried doing a '.equals()' string comparison but what happens is, since my string is added via one variable, it compares itself to itself and if itself equals itself it won't be added to the collection. I really need to keep this as a comparison of a single variable, because creating a key for each value would be sooo ridiculous for this volume of inputs.
So, with that being said, I would like to add one copy of the string, discard the duplicates, and do this thousands of times..
View Replies
View Related
Feb 24, 2014
My objective is to execute quick sort ( i was told to convert the pseudocode from the Cormen book) using arrays of increasing sizes and find the average number of comparisons for each of those sizes over 100 iterations. This is a school project and the numbers I am getting are far larger than those of my friends, so I am clearly doing something wrong. I believe it must be in the way that I am collecting and averaging my number of comparisons. I will first give the method in which most of that calculating is done, then I will include the whole program.
public static void tests(int arraySize) {
long numComparisons = 0;
long averageComparisons = 0;
long[] numComparisonsArray = new long[100];
for(int i = 0; i<100; i++) {
int[] array= genRandomArray(arraySize);
[code]....
I was simply not zeroing out one of my variables
View Replies
View Related
Mar 6, 2014
How to do a count up timer in java? like "0:00:00" hh:mm:ss
View Replies
View Related
Apr 12, 2015
I have taken array int[] a = {33,33,5,5,9,8,9,9};
In this array so many values are duplicates means 33 comes twice & 5 also comes twice & 9 comes three times. But I want to count the first value which is duplicate means 33 is first value which comes twice so answer would be 2.
I try:
public class FindFirstDuplicate {
public static void main(String[] args) {
int c=0;
int[] a = {33,33,5,5,9,8,9,9};
outerloop:
for(int i = 0; i < a.length; i++) {
[code]....
Output:
33
Count: 1
View Replies
View Related
May 7, 2014
I have to write a program that takes an array of grades and calculate the average and then count the number of grades that are above average and also count the number of grades that are below average. This is what I have so far, it calculate the average and tells me how many are above average... where and how do I get to count how many are below average
public class arrays{
public static void main(String[] args) {
final int grades = 5;
double[] numbers = new double[grades];
double sum = 0;
[Code] .....
View Replies
View Related
Aug 20, 2014
I am kind of new to Java. I have a query.. look at it. Have an xml like
<ProductList>
<Product Quality='Good' color='Blue'>
<Details ItemID='1001'/>
</Product>
...
..
</ProductList>
The <Product> tags can run into hundreds or thousands. Quality can have values like Good, Bad, Damaged. Color can also have various values (Blue, Red ..)
ItemID can repeat or can be different. So I want group by ItemID->Color->Good count or BadCount and TotalCount as below.
I want to get a sum like
<ProductList>
<ProductType ItemID="1001">
<Product_Detail CountGood="1" CountBad="2" CountTotal="3" Type="Blue"/>
</ProductType>
...
...
</ProductList>
I think using Hashmaps (Hashmap1 for ItemID, Hashmap2 for color, Hashmap3 for quality) may do the work. But I have to parse the xml number of ItemID's multiply-by number of colors multiply by various colors times for this.
Any better algorithm is there in performance perspective using Java.
View Replies
View Related
Jan 12, 2014
for example if the given string is: The world is running java technology?
Ans:
T is =2
h is=2
e is=2
w is=1
n= 4
like wise i need out put of the program?
View Replies
View Related
Jan 22, 2015
how can I got about sorting an array that contains more than one value in a single element. Such as my array below has 4 values under one element. I know how to sort elements with single values however, slightly confused on this.
import java.util.Scanner;
import java.util.Arrays;
class Mobile
{
[Code]......
View Replies
View Related
Dec 25, 2014
when I am programming let say in VB using Visual Studio, finally I build .exe file that can be run on all Windows by double click.For Java I am using Eclipse and to run those apps I am using run from Eclipse.How I can create a sort of "executable" for my Java app that I would be able to run it by file click on Windows or Linux?
View Replies
View Related
Apr 19, 2014
I got this code from wikipedia when trying to learn about the radix sort algorithm now I understand that the algorithm sorts by significant digits but it's the code that I'm not too sure about for instance the series of for loops at the bottom what exactly is going on there and why is it mod by 10? Also why are there three different integer arrays a, b, and bucket?
public static void radixsort( int[] a, int n) {
int i;
int digit = 1;
int[] b = new int[n+1];
for (i = 1; i < n; i++)
if (a[i] > a[0])
a[0] = a[i];
[Code] ....
View Replies
View Related
Dec 10, 2014
I have been working on getting the merge sort working, I have a complteted code but am not getting the right results... Here is my code and the results are "876323149" ...
public class MergeSort
{
private static int[] local; // for use in copying
private static int[] a;
public static void main(String[] args) {
int[] test = {2,3,1,4,7,8,6,3,9};
[Code] ....
View Replies
View Related
Sep 16, 2014
I am trying to code a program that orders 5 random numbers from high to low with the basic coding i know (im starting to learn theory of methods... so you can imagine) When i run the code i cant get all 5 numbers ordered but my logic says the code is right although it's pretty confusing.
I know you could code in a simpler way but first i wanna get it as it is right now. When i debug (on my own way cause i dont know how to actually use it) shows line 72 with yellow color.
public class NuevaCalculadora {
import java.util.Scanner;
public static void main(String[] args) {
[Code]....
View Replies
View Related
Apr 27, 2014
I have been looking around and I cannot seem to find which algorithm java uses for its sort method. Merge, sort etc.
While I am on the topic BinaryTree is a balanced heap right?
Are there any libraries for depth or breath first search?
Is the ArrayList a double linked list?
View Replies
View Related
Dec 11, 2014
I've playing around with linked lists and methods for sorting. So far I've tested the iterative sort, insertion sort, quick sort and they all worked perfectly. Now, I am trying to implement merge sort that would take a linked list of jobs and sort them according to their priority. I found a few solutions on the web, of which I am trying to implemented this one: LeetCode.
My system is a simple one, I do have a linked list of print jobs, each of which has the priority. The following code should sort my print queue and return the link node of the first sorted element. Here's the code.
//defining a job that has priority
public class Job {
private int priority;
[Code]....
The problem I've been trying to solve is that I am getting the stack overflow at line
ListNode<T> h1 = mergeSort(left);
meaning that I am getting into a loop somewhere down through the process of breaking the linked list into half, half or halfs and so on.
View Replies
View Related
Jan 25, 2015
I have to write the Insertion Sort Algorithm using Java codes and at the same time find the time of execution for different sizes of array, filled with random numbers. If I try to show the numbers inserted into the array randomly, they don't appear at the console.
import javax.swing.JOptionPane;
public class Insertion {
public static void main(String[]args){
int SizeArr = new Integer(JOptionPane.showInputDialog("Enter the size of teh array")).intValue();
int [] r= new int [SizeArr];
{for(int d=0; d<r.length; d++)
[Code]...
View Replies
View Related
Feb 16, 2015
I made this "lesson" to get the result of a pyramide which I succeded but not understand why im affraid..The thing is I dont understand exactly how to count it.. Isnt "j" incrementing every loop ?? In my head it should be just one star per line( the height is set to 3)how to count from the first loop to the last?I understand that println change the line though, but not why j would loop more than one time on each line..
for(int i = 1; i <= height; i++){
for(int j = 0; j < i; j++){
System.out.print("*");
}
System.out.println();
}
}
}
result:
*
**
***
View Replies
View Related
May 14, 2015
I'm trying to count the number of elements in an ArrayList which also have duplicates. So for example, in an ArrayList of strings which contains cat, cat, dog, horse, zebra, zebra, the answer should be two.
If an element is found to be a duplicate, that element should then be exempt from the search so if that element is found again it should not increase the duplicate count.
Here is my code:
public int countDuplicates() {
int duplicates = 0;
// TODO: Write the code to get the number of duplicates in the list
for (int i = 0; i < list.size()-1;i++) {
boolean found = false;
[Code] ....
I know it's wrong because right now it's still increasing the duplicate count for elements that have already been detected as duplicates. How can I make it stop doing this?
View Replies
View Related
May 2, 2014
I have having some trouble on counting the primitive operations on the pseudocode given below:
Algorithm 4. MaximumArray(Arr)
Input: A 1-D numerical array Arr of size n
1) Let CurrentMax = a0
2) For i = 1 to n-1
3)If ai > CurrentMax Then CurrentMax = ai
4) End For
Output: CurrentMax, the largest value in Arr
As of now, I know that for Line 1 there are 2 operations (one set and one read). I don't know how to figure out the for loop and If statement (line 2 and line 3 too).
View Replies
View Related