Returning Index Of Last Occurrence Of A Number In Array
Apr 16, 2014
I'm making a program with several functions for an array of integers, one being to find the last occurrence of a given integer and returning it. The problem is that the method is returning -1 for every input, even though it's only supposed to do so for numbers not in the array. Here's the part of my code with the sections I'm having an issue with:
Driver
import java.util.Arrays;
public class ArrayMethodsDriver
{
public static void main(String[] args) {
int[] a = {7,8,8,3,4,9,8,7};
System.out.println("Last index of 8: " + ArrayMethods.findLast(a, 8));
System.out.println("Last index of 2: " + ArrayMethods.findLast(a, 2));
[Code] ....
As you can see, I'm testing 8(which should give a 6) and 2(which should give -1 because it's not in the array), and 4(which should give 4). The print statements all say -1.
What program needs to find is the most biggest number. It does the job, but another task of the program is to find the index of that number . The second loop should do just that, but for some reason, as the loop goes further, it passes through the if statement even though answer "a[i]" is not equal to "answer". The idea is that if a[i] and answer are equal, the "i" should represent the index number.
Im creating my 2nd project ever and its a hangman game. I created an Array that has 20 different words in it and need to create a function that generates a random number to pick a random index of the array to obviously pick a random word. I cannot figure out the syntax for the life of me.
I am creating my 2nd project ever and its a hangman game. I created an Array that has 20 different words in it and need to create a function that generates a random number to pick a random index of the array to obviously pick a random word.
I'm studying about arrays and I have some questions:
First, is there any difference between these two?
Java Code:
int x[] = new int[3]; int[] x = new int[3]; mh_sh_highlight_all('java');
It seems to me when I try them they do exactly the same, is that correct?
Second, more important question. If I want to make an int variable that refers to the index number of an array, how do I write? For example if we have
Java Code: String[] string = new String[10]; mh_sh_highlight_all('java');
And I want to have a variable "int n" that refers to an index number, so that if I set n = 5 then string[5] is selected. Note that the int n is NOT an array, but just a regular integer variable. How can I do that?
Make a program which takes input from the user (6-digit number) and check how many times each digit gets repeated in the number. Java GUI was used (Netbeans 6.5.1).This is my code. I took the input via a JTextField named tf and displayed the output on JTextArea ta.
- arrays not used as we haven't studied them yet
int num= Integer.parseInt(tf.getText()); int no=num; if(num<100000) ta.setText("Invalid Input. Please Enter 6 digit number"); int n1= num%10; num=num/10; //stores last digit
[code]....
How do I omit the last 5 lines? This problem occurs whenever I input a digit with any recurring digit.What changes/additions should I make?
In my account driver I am trying to get the user inputted account number to get the account by account number. In my code
System.out.println("Which Account number: "); int account = scan.nextInt(); ac.get(account-1);
This works if my accounts are numbered incrementally starting with one, I want it to match the inputted account number
System.out.println("Account number: "); int num = scan.nextInt();
I am thinking a for loop is probably needed. Here is my code:
public class AccountDriver { public static void main(String[] args) { Scanner scan = new Scanner(System.in); ArrayList<Account> ac = new ArrayList<>(); boolean more=true; boolean again=false;
(Count occurrence of numbers) Write a program that reads the integers between 1 and 100 and counts the occurrences of each. Assume the input ends with 0. Here is a sample run of the program:
Enter the integers between 1 and 100: 2 5 6 5 4 3 23 43 2 0 2 occurs 2 times 3 occurs 1 time 4 occurs 1 time 5 occurs 2 times 6 occurs 1 time 23 occurs 1 time 43 occurs 1 time
Note that if a number occurs more than one time, the plural word "times" is used in the output.
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]]++;
public static void main(String args[]) { Scanner in=new Scanner(System.in); System.out.println("Enter the Total Number of Integers:"); int totalInteger=in.nextByte(); long largest=0; for(int i=1;i<=totalInteger;i++) { System.out.println("Enter Integer-"+i+":");
[code]...
I want to get Index of that particular number in which Value is largest.
I am receiving an ArrayIndexOutOfBoundsException for the following code, which moves a creature through a 2D array maze. I have altered the clauses of the first if statement for the four direct methods (north, south, east, and west) multiple times (i.e. x + 1 >= 0 && x > 0 && x - 1 > 0 && x < array.length...etc). However, while the code occasionally runs, more often than that it returns this exception. Catching the exception seems like a poor workaround though if worst comes to worst I'll do that.
I included only the relevant functions of the code:
public boolean goNorth(char[][] array) { boolean success = true;; x = getX(); //x = this.x; y = getY(); //y = this.y; if ((x - 1 >= 0 && x - 1 < array.length) && (y >= 0 && y < array[x].length)) {
public int[] allIndicesOf(E itemSought) { ArrayList<Integer> toUse = new ArrayList<>(); for (E anArray : container) { if (anArray.equals(itemSought)) { toUse.add(container.indexOf(itemSought));
[Code] ....
I have an array list of strings. I want to be able to return an array of integers telling me which indexes in the string array list contain the itemSought object.
I have this program where I'm supposed to fill an array with 1000 indices with 1000 randomly generated numbers between 1 and 1000. The program is supposed to check if any of the numbers match an index that is the same value (so for example, the number 4 is in index 4). How to check for that condition, especially using a binary search (I'm also told to use a binary search).
Right now the variable index isn't initialized because I don't know what to initialize it to exactly. How do I check to see if any numbers match the value of the same index?
import java.util.*; public class Identity { public static void main(String[] args) { int [] integers = new int [1000]; // Fill array with randomly generated numbers int [] display = GenerateRandom(integers);
I am trying to return an array and I keep getting a null error. The below class sets the material numbers into an array and should return that array if called :
public class Jobs { private int[] materialsNumber; //change to parts and create another class that gets the materials for the parts public int[] job1() { materialsNumber[0] = 11960120;
[Code] ....
I later try to call the method. The program executes but stops after I println "test in loop"
public class PurchaseOrdersToParts { private Jobs job = new Jobs(); int[] getPartsForPurchaseOrder(BigDecimal purchaseOrder) { System.out.println("inside getparts"); BigDecimal testNum = new BigDecimal(123.0);
[Code] ....
This is the method that is calling the method in the GenerateOrdersToParts class
private PurchaseOrdersToParts purchaseOrdersToParts = new PurchaseOrdersToParts(); @Inject PoRepository poRepository; public GenerateShopJobTickets() {
I'm working on an assignment that asks for the user to input 2 lists of numbers and my program will merge and sort the lists using arrays and 2 methods. I think I have most of it down, but I'm not sure how to go about getting the user inputs. In my current code, it's giving me a bunch of 0s instead of a sorted list.
import java.util.Scanner; public class merge2sortedlists { public static void main(String[] args) { Scanner input = new Scanner(System.in);
I searched online for this error and found out it's because the array is smaller than the index but I am not sure how I can fix this error....
public Lamborghini[] getCarsWithHorsepowerRange(double lowHP, double highHP){ int i = DEFAULT_ZERO; Lamborghini[] carWithinHPRange = new Lamborghini[i]; for (Lamborghini lambos : inventory){ double horsePower = lambos.getHorsepower();
[Code] ....
I tried
Lamborghini[] carWithinHPRange = new Lamborghini[i+5];
//which works sometimes because once I boost up the range and so there'll be more result then the error came up again....
My project was to create an array holding 10 integers and populate the array with 10 random numbers. Then ask the user to guess the number. Prompt the user with a while loop if their input is out of range. Determine if the users number is in the array, and display which index location the number is in. I got most of the code done but am having trouble displaying the index location.
import javax.swing.*; public class Homework4 { public static void main(String[] args) { int[] numarray = new int [10]; char repeatcode = 'y';
I am trying to make different arrays each being filled with random numbers from 0 to 2000, however when I run this code I get the error mentioned in the header. here is part of my code
for (int i = 1; i <= 14; i++) { int n = (int) Math.pow(2, i); int[] list = new int[n]; for( int j = 0; j <= list.length; j++){ list[j] = (int) (Math.random() * 2000); } }
I want to find a certain element in array I have to scan through the array index starting from 0 until I find the number I am looking for. Even in data structures which use hashing like HashMap and Hashtable we will have to scan through the keys until we find the key we are looking for. So what is the use of hashing over index based searching? I mean how is hashing an advantage over an array?