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.
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:
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..
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
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);
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. * */
I am trying to create a class (DVD) with an instance variable that references a map, the constructor for this class must create an empty map and assign it to the instance variable map. I want to populate this map with instances of a different class called tv series, I am using blueJ, I am not sure why this doesn't work
Java Code:
import java.util.*; public class DVD { public static Map<String, TvSeries>DVD; public TvSeries program;
In linkedHashSet are the elements stored according to the insertion order or according to the hash value. If the elements are stored according to the insertion order then why is it not named as LinkedSet instead of LinkedHashSet? Why is the word hash used in LinkedHashSet?
I am trying to add two strings to a hash map. the first being the key, a 3 digit code that can have duplicates, and the value to store in an ArrayList. From what I've read, when add a key to the hashmap that is a duplicate, the previous gets overwritten and that is why I am trying to put the values in an array list. I was hoping that when the key is looked up, it would print all the values associated with that key:
class library{ HashMap<String, ArrayList<String>> checkoutBooks = new HashMap<String, ArrayList<String>>() ; ArrayList<String> patName = new ArrayList<String>() ; public void checkoutBook(String isbn, String patron) { patName.add(patron) ;
I am implementing the hash join algorithm for a project with a hard coded hash function. I've hashed the first relation and I've hashed the second relation. The problem is when hashing the second relation I only know how to add the tuple from the second relation into a third relation and not also access the first relation tuple at that time
The "hashtable" structure contains the hashcode of my key as well as the tuple stored in a string. This code below is taking place in the hashing of the second table, my function determines that both these tuples share the same hash code based on the first element in the tuple (element 0) so I add the tuple from my second relation to the qRelation but I also want to add the tuple from the hashtable at that point and I don't know how to access that string
if(hashtable.containsKey(tuple/*(RELATIONA)*/.get(0).hashCode())) { //Add the tuple from relation A into qRelation wich matches the //above condition qRelation.addAll(tuple/*(RELATIONB)*/); }
I have to write a resize method so that when my Bucket gets to a certain point, then it resizes the bucket when it is called. What is happening is, I am getting strange results when I run the method. My mean bucket length should be at 2.5 for the last insertion, but I am getting something like 0.1346. Here is my dictionary class
// The "Dictionary" class. // The Dictionary class implemented using hashing. Hash buckets are used. A dictionary contains a set of data elements with corresponding keys. Each element is inserted into the dictionary with a key. Later the key can be used to look up the element. Using the key, an element can be changed or it can be deleted from the dictionary. There is also an operation for checking to see if the dictionary is empty.
package dictionary; public class Dictionary { protected final static int MAX_BUCKETS = 1000; // number of buckets protected DictHashEntry[] buckets; // the bucket array private int collisionCount = 0;
I have a drop-down which contains the four sections simple buttons(filters). When click any of these buttons some settings are applied. I have successfully auotmated it using simple if else and switch but in that case i have to use 8 parameters(8 are the number of button)
public void editFilters(WebElement filter1, WebElement filter2, WebElement filter3, WebElement filter4,WebElement filter5,WebElement filter6,WebElement filter7,WebElement filter8 String edit, String expectedColour) { switch (edit) { case "selectFilter": if (filter1 != null) {
[Code] .....
But want to make it more effective by using hashes. I do not want to use 8 different parameters to perform action on the respective button.
So now what i want to implement.
Create a method in which i pass the parameter1 as hash and 2nd parameter as 0 or 1, 0 means unSelectFilter and 1 means select the filter.
With parameter 1, in code i want to pass the name or xpath or anything else for any number of filters , that those filters names should be stored into that hash and then by passing 0 or 1, i can select/unselect those filters.
So I am supposed to be changing infix notation to postfix notation using stacks. This is simply taking a string "3 + 5 * 6" (infix) and turning it into (3 5 6 * +" (postfix).
To do this, we are to scan the string from left to right and when we encounter a number, we just add it to the final string, but when we encounter an operand, we throw it on the stack. Then if the next operand has a higher input precedence than the stack precedence of the operator on the top of the stack, we add that operator to the stack too, otherwise we pop from the stack THEN add the new operator.
I am supposed to be utilizing a hash map but I don't see how you would go about doing this. We are supposed to store operators on the hash map but operators need their own character, input precedence, stack precedence, and rank. How do you use a hash map when you need to tie a character to 3 values instead of just 1? I just don't get it.
The following is our Operator class that we are to use. Another problem is this isn't really supposed to be modified, yet we were given two important variables (inputPrecedence and outputPrecedence) that we can't have nothing to be initialized to and no way of accessing? So that might be where a hash map comes in but I am not sure. I am not very sure on how they exactly work anyway...
public class Operator implements Comparable<Operator> { public char operator; // operator privateint inputPrecedence; // input precedence of operator in the range [0, 5] privateint stackPrecedence; // stack precedence of operator in the range [-1, 3]
[Code] ....
So my question mostly revolves around how I tie an Operator character to its required values, so I can use it in my code to test two operators precedence values.
My original thought was turn string into character array, but then I would need nested for/while loops to check if it is a number or letter, or if it is an operator and thus result in O(n^2) time
I am currently working on a project where I need to return data from a database over RMI to a client who requests it. Some of the fields in the Data Object can not be seen by the client so I need to create another object to send over the network instead. The method I use is this...
public static SerializableObject createSerializableObjectFromDataObject(DataObject dataObject){ SerializableObject serializableObject = new SerializableObject(); serializableObject.setField(dataObject.getField()); serializableObject.setAnotherField(dataObject.getAnotherField()); return serializableObject; }
Is there a better way of doing this? I am creating many subclasses DataObject which all require this static method to be implemented and I can't push it into the superclass because each one needs custom behaviour.
how String objects are different from other objects
part 1:
// creating two objects Dog mydog1 = new Dog(); Dog mydog2 = new Dog(); // comparing the reference variables if( mydog1 == mydog2){ System.out.println(" The reference variables refer the same object "); } else { System.out.println(" They refer to different objects "); }
The above code works as I understand objects , it prints "They refer to different objects " to the screen.
Part - 2
// creating two objects ( I beleive, pls correct me if i am wrong ) String a = "haai"; String b = "haai";
if( a == b){ System.out.println(" Reference variables refer to same object");
When i run the above code it prints that a and b refer same object , I don't understand how they refer to same object when i didn't assign " String b = a; ". My question is did java just create one object and stored the same reference values to a and b .
The thing is if SITA is the name then I have to insert component to the particular envi tabs , if DEVB is the component I have to insert the component there. How can I do this I have done some code its inserting the data at the bottom og the XML .
I'm quite new to Java. I have some trouble with understanding how to get two classes to get objects from each other (if that is the correct term).
Lets say I have a login class, in which I have a method checking what the user has entered into the console (I have not displayed the whole code, but this class works as it should and give the user an option to enter username and password and return it true if entered correct).
public static boolean validateUserPass(String userName, String password) { String[] user = {"admin"}; String[] passwords = {"firkanten"}; boolean check = false; for (int i = 0; i < user.length; i++) { if (userName.equals(user[i])) { if (password.equals(passwords[i])) { check = true;
Now, in another class I want a display box to appear on the screen and give the user three options: Click yes, no or cancel. I get this to run perfectly alone, this is not the hard part for me. I want the display box only to appear when the correct username and password is given, but I can't seem to figure out how to do this probably.
In my project I had to create 2 classes, Room and Animal.
Room had to have an array (NOT arrayList-I know theyre better and easier but I need to use an array, for now) This array must be able to be populated by 10 "Animals", and the Room class needs two methods, a method to add animal a to the room (rooms array) and a toString() that returns the name of the room and the names of the animals in the room. The teacher added a hint saying that this toString() should reference the animal classes toString()
Here is my code thus far:
public class Room { private String name; Animal[] inRoom = new Animal[10]; public Room(String roomName){ name = roomName; } public void addAnimal(Animal a){ for(int i = 0; i < 10; i++){
The thing is if SITA is the name then I have to insert component to the particular envi tabs , if DEVB is the component I have to insert the component there. How can I do this I have done some code its inserting the data at the bottom og the XML.
I am making a game in java and for the game board i want to fill the screen with blocks. to do this i stored objects of a class that displays squares into an array list and displayed the array list. however, when i do this all of the squares are drawn on top of anther at the final squares coordinates and i dont know why.
here is the code
// code for adding the squares into the array nt x = 0; int y = 0; int size = 10; static ArrayList<Map> map = new ArrayList<Map>(); //static ArrayList<Items> items = new ArrayList<Items>();
I'm having trouble creating two new die objects for the PairofDie class. I'm trying to run two separate die and print the face value and then add both numbers up and print those values as well.
public class Die { private final int MAX = 6; private int faceValue; //private int faceValue2; public Die(){ faceValue = 1;
[Code] .....
Exception in thread "main" java.lang.Error: Unresolved compilation problems:
The method Die() is undefined for the type PairofDice The method Die() is undefined for the type PairofDice at PairofDice.main(PairofDice.java:6)
I would like to know how I can iterate through objects . I have a manually created linked list (without using the built-in method one). So in the memory my object looks like this(attachment).I would like to do a for loop or while loop to get each element under the test3.head.
Exercise the Coin class using a driver class in which 5 coins are flipped, as a group, 1024 times. Display the number of times exactly 4 tails are obtained. Display the number of times exactly 5 tails are obtained. Use an array of Coin.
how to put an object into an array?I know how to make a coin class with a Heads and Tails, but I dont know how to make 5 coins all at once.