The problem is it is returning -2, and also returning false when it should be true. There is no error it just is not working correctly.
import java.util.Arrays;
import java.util.Scanner;
/**
* This Script will allow you to add e-Mails and than beable to search for them.
*/
public class eMailSeacher
{
public static void main(String[] args)
[Code] ....
1. Enter an Email
2. Find an existing email
3. Exit
1
Enter the users E-Mail:
josh
-1
Insertion successful.
The assignment is to be able to read two files, a dictionary file, and a file you want to spell check. I've also attached the test files too.
When reading small files where there is only one word per line it works fine. But when I try to test a paragraph it returns all the words as misspelt.
Here are all of the classes that were given for this assignment. I've made some modifications to try to get them to work properly.
BinarySearchTree.java
// ADT binary search tree. // Assumption: A tree contains at most one item with a given search key at any time.
public class BinarySearchTree extends BinaryTreeBasis { // inherits isEmpty(), makeEmpty(), getRootItem(), and // the use of the constructors from BinaryTreeBasis
[Code] .....
As you can see I read in the dictionary file and the spellcheck file, construct a new BST, and then insert each word from the dictionary into the tree.
Then I make an empty arraylist for the misspelt words. While searching through the spellcheck file, if it finds any incorrect words, it adds them to the list then returns the list after it's done reading through the file.
But for some reason it prints out every single word in the test file and I can't figure out why.
This method pretty much determines if there is a path from one vertex to another. When I check to see if there is a path from 5 to 2 (which there is) it return false. However, when I create a driver method, it return true (which it should). Why? It should never reach outside of the else because the condition is met, right???
Path: 5 points to 1 and 3 (1 does not have a path to anything). 3 points to only 0. 0 points to 1 and 2. Thus there is a path from 5 to 2.
Here is the code without the driver (the one that is returning false, even tho it should be true)
public boolean existsPath(int x, int y){//x = 5, y = 2 stack.push(x);//mark x as visited if(x == y){//path found stack.removeAllElements(); return true;
I'm trying to build a method that can search a binary search tree for a specific target and then return the number of probes it took to get there. It seems to me that the best way to do this would be a recursive search method and a counter that tracks the number of calls. But I'm struggling with how to implement this. Here's the code I have so far. what works/doesn't work with the method.
// Method to search the tree for a specific name and // return the number of probes public T search(BTNode<T> btNode) {
I am trying to make a program that compares the 3 different search algorithms(sequential/binary/hashing). I have already made the sequential search algorithm, binary and hashing part of the code.My program OPENS a data file, and then OPENS a key data file. and then searches through them using both. How to go about the binary and hashing search algorithm (in the driver program).
*I have included a zip file with: -base program -driver program -data file -key data file
I have created a binary search with 3 subsets, some aslo call it a ternary search and have come up with a minor problem. If you run the code as posted below it just runs until you quit it. If anyother value in the array is searched it is found.
/* public class BinarySearchDemo { public static void main(String[] args) { String[] songs = {"Ace Of Spades", "Beyond the Realms Of Death", "Breaking The Law",
How do I make it so I am able to enter any number rather then just the numbers in the arrays? I want it to be able to find the position of any number between 0-100.
import javax.swing.*; public class BinarySearch { public static void main(String[] args) { int array[] = new int[11]; array[0] = 10; array[1] = 20; array[2] = 30; array[3] = 40; array[4] = 50; array[5] = 60;
The point is to use a binary search to determine how many steps it would take to get to int X, int Y in a grid that is N by N. Picture a parking lot that is square and your car is at (x,y). You can honk your horn from your key to determine the direction of the car. I need to return the amount of steps to get to the car. You can't step diagonally. I am currently getting an error that causes an infinite loop and I can't fix it.
public class ParkingLot { public int search(int N, int X, int Y) { int minX = 0, maxY = N, minY = 0, maxX = N; int num = 0; int curX, curY; int newCurX, newCurY; curX = (minX + maxX)/2; curY = (minY + maxY)/2; while (curX != X || curY != Y)
Righto, so I've crafted a binary search and a sequential search. The sequential search works perfectly fine.
However; my binary search doesn't. If I enter in incorrect data, it tells me the data I entered was incorrect. But if I enter in correct data, my sequential search tells me my datas correct, but binary search tells me I'm still incorrect. Here's my binary search + the test program.
If an array has been sorted using a comparator then why is it necessary to pass on that comparator to the binaryserach method. What I want to know is that how come the presence of a comparator reference affect the way the algorithm works?
Doing an early exercise out of the Java Examples in a Nutshell book and they are asking for 'an efficient search algorithm to find the desired position' of two floats in a sorted array that bound an int. My try is below:
public static int search(int searchnum, float[] nums){ int low = 0; int high = nums.length - 1; int mid = (low + high) / 2; while(low < high){ if(nums[mid] < searchnum){
[Code] ....
This is working for the example but I would like to know if it is considered 'efficient' or even good?
I am currently taking a class thats requires me to use flowcharts in a way t figure out algithrims This is the flowchart that i need to use: [URL] .....
This is my current code.
public int binSearch(int target) { int first = 0; int last = count -1; int found =0; int middle=0; while (first <=last && found == 0)
I'm just getting two errors concerning line 38 where it has Arrays.sort(int roomList); and the errors state that ".class is expected" and so is a semicolon. What did I do wrong? Also, how might I tweak the code to display "Occupied" or "Unoccupied" depending on the room that was entered?
Also we're not allowed to make use of API method for binary search so that's out of the question.
import java.util.Scanner; import java.util.Arrays; public class HotelRoom { public static void main(String[] args) { Scanner stdIn = new Scanner(System.in); int[] roomList = new int[25]; // occupied rooms
I am writing binary search method. I don't want to use recursive way, I want to write this method iteratively
Java Code:
public boolean binarySearch(int[] T, int min, int max, int target) { int mid=(min+max)/2; boolean found = false; int index=0; while (!found && T.length <= 0 ) { if (target == mid) { found = true;
I am trying to implement a simple binary search tree . How can I make a node in the tree which should store two pieces of information: a String variable called name, and a int variable called mark. ..
public class BinarySearchTree<E> implements Comparable<E> { public BinaryTree<E> root; int size; int mark; String name; // Constructor public BinarySearchTree()
I don't see any nodes that I add. Not sure why getting this error.
duplicate found Exception in thread "main" java.lang.NullPointerException at binarysearchtree.delete(binarysearchtree.java:111) at binarysearchtree.main(binarysearchtree.java:196) Java Result: 1 public class node<T>
/** * Use selection sort to sort the tracks by name. Return a new, sorted ArrayList of tracks. * * @return an ArrayList containing the tracks sorted by name, or null if no tracks exist */ public ArrayList<Track> getTracksSortedByName() { // YOUR CODE HERE if(tracks == null) return tracks;
[Code] ....
Here are my 2 issues (there are 2 lines with compiler errors): I feel like I understand selection sort and binary search, but am not sure how to apply it to the more abstract idea of a Track ArrayList (hence the 2 compiler errors). What should I use to make it work. Lastly, I'm very uncomfortable with recursion, so my guess is there is also probably some logical issue with it in the getTracksSortedByName method.
I'm trying to implement a Binary Search Tree that accepts strings. I cannot figure out how to compare the string value in my add method against the node object. While I could make the node class data be the string type I am trying to make the code be as reusable as possible. So my question is this, is there a simple way I can compare the two that I am missing?
public class BTNode<E> { private E data; private BTNode<E> left, right; //constructor public BTNode(E initialData, BTNode<E> initialLeft, BTNode<E> initialRight) { data = initialData; left = initialLeft; right = initialRight;
I am trying to make binary search tree...I am trying to construct the left part of binary search tree with root node set as 70...It is not working ...My code is
public class Node { /** * @param args */
int root; Node left; Node right; public void insertNode(Node node, int num) { //Node nodeRoot = this; //root of tree we have set to 70...constructing only left of tree with root=70
We are required to write a binary‐search method to find an int within an array of ints. Without using any functions besides the basics (for loops, if statements, etc.)
I have this so far:
public int binarySearch(int[] ints, int n) { for(int i = 0; i < ints.length; i++) { if(ints[i] == n) { return ints[i]; } } }
This was my initial question: I am confused as to why this won't return the desired value. I keep running into an infinite loop or data is returned that I searched.
I still need to work on whether a user enters a search that doesn't exist......that is where I am stuck....
code has been updated......
int low = 0; int high = subArray.length; while (low < high) { System.out.println("You have entered the while loop"); int mid = (low + high) / 2;
public class Search { public static final int NOT_FOUND = -1; public static int binarySearch( int [ ] a, int x ) { int low = 0; int high = a.length - 1; int mid; while ( low <= high )
[Code] ....
I keep getting illegal start of expression at ={-3,10,5,24,45.3,10.5}
It says I have 12 errors and I have tried so many things to fix it and I just don't know what to change to make it work.