Search Results

Search found 3773 results on 151 pages for 'args'.

Page 118/151 | < Previous Page | 114 115 116 117 118 119 120 121 122 123 124 125  | Next Page >

  • Hot to set class variable to be visible to its public static methods?

    - by RCola
    Why I can noy access my variable p in mull form iterate method? How to resolve a problem? Hot to set class variable to be visible to its public static methods? public class mull { public static void main(String[] args) throws InterruptedException { final JPanel p = createAndShowGUI(); Timer timer = new Timer(1000, new MyTimerActionListener()); timer.start(); try { Thread.sleep(10000); } catch (InterruptedException e) { } timer.stop(); public static void iterate(){ for (int i = 0; i < 55; i++){ // "p cannot be resolved" p.moveSquare(i*10, i*10); p.setParamsRing(i*5, i*7, 200, 200); // p.repaint(); } } } class MyPanel extends JPanel { .... } How to access variable set in another method (in this example main())? Why Eclipse forces me to use this ((MyPanel) p).setParamsRing(i*5, i*7, 200, 200); instead of this p.setParamsRing(i*5, i*7, 200, 200);?

    Read the article

  • What is my error in a map in java?

    - by amveg
    Hello everyone I am trying to solve this problem: http://www.cstutoringcenter.com/problems/problems.php?id=4, but I cant figure out why my code doesnt solve this, I mean in the "for" how can I can multiply the letters? what is my error?, It just tell always 7, but I want to multiple all the letters, I hope you can help me enter code here public class ejercicio3 { public static void main(String args[]) { Map<Character, Integer> telefono = new HashMap<Character, Integer>(); telefono.put('A', 2); telefono.put('B', 2); telefono.put('C', 2); telefono.put('D', 3); telefono.put('E', 3); telefono.put('F', 3); telefono.put('G', 4); telefono.put('H', 4); telefono.put('I', 4); telefono.put('J', 5); telefono.put('K', 5); telefono.put('L', 5); telefono.put('M', 6); telefono.put('N', 6); telefono.put('O', 6); telefono.put('P', 7); telefono.put('R', 7); telefono.put('S', 7); telefono.put('T', 8); telefono.put('U', 8); telefono.put('V', 8); telefono.put('W', 9); telefono.put('X', 9); telefono.put('Y', 9); String mensaje = "Practice"; int producto = 1; for (char c : mensaje.toCharArray()) { if (telefono.containsKey(c)) { producto = telefono.get(c) * producto; System.out.println(producto); } } } }

    Read the article

  • question about quicksort 3 way partition

    - by davit-datuashvili
    i want implement quicksort 3 way partition here is code public class quick3{ public static void quicksort3(int a[],int l,int r){ int k; int v=a[r]; if (r<=l) return; int i=l; int j=r; int p=l-1; int q=r; for (;;) { while (a[++i]<v); while (v<a[--j]) if (j==i) break; if (i>=j) break; swap( a,i, j); if (a[i]==v){ p++; swap(a,p,i);} if (v==a[j]){ q--; swap( a,q,j); } } swap(a,i,r); j=i-1; i=i+1; for (k=1;k<=p;k++,j--) swap(a,k,j); for (k=r-1;k>=q;k--,i++) swap(a,k,i); quicksort3(a,l,j); quicksort3(a,i,r); } public static void main(String[]args){ int a[]=new int[]{4,6,5,9,7,8,3}; quicksort3(a,0,a.length-1); for (int i=0;i<a.length;i++){ System.out.println(a[i]); } } public static void swap(int a[],int i,int j){ int t=a[i]; a[i]=a[j]; a[j]=t; } } after change result is 4 8 7 6 3 5 9 any suggestion?please help

    Read the article

  • Counting substring, while loop

    - by user1554786
    public class SubstringCount { public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.println("Enter a word longer than 4 characters, and press q to quit"); int count = 0; while (scan.hasNextLine()) { System.out.println("Enter a word longer than 4 characters, and press q to quit"); String word = scan.next(); if (word.substring(0,4).equals("Stir")) { count++; System.out.println("Enter a word longer than 4 characters, and press q to quit"); scan.next(); } else if (word.equals("q")) { System.out.println("You have " + count + ("words with 'Stir' in them")); } else if (!word.substring(0,4).equals("Stir")) { System.out.println("Enter a word longer than 4 characters, and press q to quit"); scan.next(); } } } } Here I need to print how many words entered by the user contain the substring 'Stir.' However I'm not sure how to get this to work, or if I've done any of it right in the first place! Thanks for any help!

    Read the article

  • java threads don't see shared boolean changes

    - by andymur
    Here the code class Aux implements Runnable { private Boolean isOn = false; private String statusMessage; private final Object lock; public Aux(String message, Object lock) { this.lock = lock; this.statusMessage = message; } @Override public void run() { for (;;) { synchronized (lock) { if (isOn && "left".equals(this.statusMessage)) { isOn = false; System.out.println(statusMessage); } else if (!isOn && "right".equals(this.statusMessage)) { isOn = true; System.out.println(statusMessage); } if ("left".equals(this.statusMessage)) { System.out.println("left " + isOn); } } } } } public class Question { public static void main(String [] args) { Object lock = new Object(); new Thread(new Aux("left", lock)).start(); new Thread(new Aux("right", lock)).start(); } } In this code I expect to see: left, right, left right and so on, but when Thread with "left" message changes isOn to false, Thread with "right" message don't see it and I get ("right true" and "left false" console messages), left thread don't get isOn in true, but right Thread can't change it cause it always see old isOn value (true). When i add volatile modifier to isOn nothing changes, but if I change isOn to some class with boolean field and change this field then threads are see changes and it works fine Thanks in advance.

    Read the article

  • directory traversal in Java using different regular and enhanced for loops

    - by user3245621
    I have this code to print out all directories and files. I tried to use recursive method call in for loop. With enhanced for loop, the code prints out all the directories and files correctly. But with regular for loop, the code does not work. I am puzzled by the difference between regular and enhanced for loops. public class FileCopy { private File[] childFiles = null; public static void main(String[] args) { FileCopy fileCopy = new FileCopy(); File srcFile = new File("c:\\temp"); fileCopy.copyTree(srcFile); } public void copyTree(File file){ if(file.isDirectory()){ System.out.println(file + " is a directory. "); childFiles = file.listFiles(); /*for(int j=0; j<childFiles.length; j++){ copyTree(childFiles[j]); } This part is not working*/ for(File a: childFiles){ copyTree(a); } return; } else{ System.out.println(file + " is a file. "); return; } } }

    Read the article

  • How do I make this Java code operate properly? [Multi-threaded, race condition]

    - by Fixee
    I got this code from a student, and it does not work properly because of a race condition involving x++ and x--. He added synchronized to the run() method trying to get rid of this bug, but obviously this only excludes threads from entering run() on the same object (which was never a problem in the first place) but doesn't prevent independent objects from updating the same static variable x at the same time. public class DataRace implements Runnable { static volatile int x; public synchronized void run() { for (int i = 0; i < 10000; i++) { x++; x--; } } public static void main(String[] args) throws Exception { Thread [] threads = new Thread[100]; for (int i = 0; i < threads.length; i++) threads[i] = new Thread(new DataRace()); for (int i = 0; i < threads.length; i++) threads[i].start(); for (int i = 0; i < threads.length; i++) threads[i].join(); System.out.println(x); // x not always 0! } } Since we cannot synchronize on x (because it is primitive), the best solution I can think of is to create a new static object like static String lock = ""; and enclose the x++ and x-- within a synchronized block, locking on lock. But this seems really awkward. Is there a better way?

    Read the article

  • Iterating over a String to check for a number and printing out the String value if it doesn't have a number

    - by wheelerlc64
    I have set up my function for checking for a number in a String, and printing out that String if it has no numbers, and putting up an error message if it does. Here is my code: public class NumberFunction { public boolean containsNbr(String str) { boolean containsNbr = false; if(str != null && !str.isEmpty()) { for(char c : str.toCharArray()) { if(containsNbr = Character.isDigit(c)) { System.out.println("Can't contain numbers in the word."); break; } else { System.out.println(str); } } } return containsNbr; } } import com.imports.validationexample.function.NumberFunction; public class Main { public static void main(String[] args) { NumberFunction nf = new NumberFunction(); System.out.println(nf.containsNbr("bill4")); } } I am trying to get it to print out the result to the console, but the result keeps printing multiple times and prints the boolean value, which I do not want, something like this: bill4 bill4 bill4 bill4 Can't contain numbers in the word. true Why is this happening? I've tried casting but that hasn't worked out either. Any help would be much appreciated.

    Read the article

  • (Java) Get value of string loaded into dynamic-type object?

    - by Michael
    I'm very new to Java (~10 days), so my code is probably pretty bad, but here's what I've got: ArgsDataHolder argsData = new ArgsDataHolder(); // a class that holds two // ArrayList's where each element // representing key/value args Class thisArgClass; String thisArgString; Object thisArg; for(int i=2; i< argsString.length; i++) { thisToken = argsString[i]; thisArgClassString = getClassStringFromToken(thisToken).toLowerCase(); System.out.println("thisArgClassString: " + thisArgClassString); thisArgClass = getClassFromClassString(thisArgClassString); // find closing tag; concatenate middle Integer j = new Integer(i+1); thisArgString = getArgValue(argsString, j, "</" + thisArgClassString + ">"); thisArg = thisArgClass.newInstance(); thisArg = thisArgClass.valueOf(thisArgString); argsData.append(thisArg, thisArgClass); } The user basically has to input a set of key/value arguments into the command prompt in this format: <class>value</class>, e.g. <int>62</int>. Using this example, thisArgClass would be equal to Integer.class, thisArgString would be a string that read "62", and thisArg would be an instance of Integer that is equal to 62. I tried thisArg.valueOf(thisArgString), but I guess valueOf(<String>) is only a method of certain subclasses of Object. For whatever reason, I can't seem to be able to cast thisArg to thisArgClass (like so: thisArg = (thisArgClass)thisArgClass.newInstance();, at which point valueOf(<String>) should become accessible. There's got to be a nice, clean way of doing this, but it is beyond my abilities at this point. How can I get the value of the string loaded into a dynamically-typed object (Integer, Long, Float, Double, String, Character, Boolean, etc.)? Or am I just overthinking this, and Java will do the conversion for me? :confused:

    Read the article

  • question about partition

    - by davit-datuashvili
    i have question about hoare partition method here is code and also pseudo code please if something is wrong correct pseudo code HOARE-PARTITION ( A, p, r) 1 x ? A[ p] 2 i ? p-1 3 j ? r +1 4 while TRUE 5 do repeat j ? j - 1 6 until A[ j ] = x 7 do repeat i ? i + 1 8 until A[i] = x 9 if i < j 10 then exchange A[i] ? A[ j ] 11 else return j and my code public class Hoare { public static int partition(int a[],int p,int r) { int x=a[p]; int i=p-1; int j=r+1; while (true) { do { j=j-1; } while(a[j]>=x); do { i=i+1; } while(a[i]<=x); if (i<j) { int t=a[i]; a[i]=a[j]; a[j]=t; } else { return j; } } } public static void main(String[]args){ int a[]=new int[]{13,19,9,5,12,8,7,4,11,2,6,21}; partition(a,0,a.length-1); } } and mistake is this error: Class names, 'Hoare', are only accepted if annotation processing is explicitly requested 1 error any ideas

    Read the article

  • C Map String to Function

    - by Scriptonaut
    So, I'm making a Unix minishell, and have come to a roadblock. I need to be able to execute built-in functions, so I made a function: int exec_if_built_in(char **args) It takes an array of strings(the first being the command, and the rest being arguments). For non built-in commands I simply use something like execvp, however I need to find a way to map the first string to a function. I was thinking of making two arrays, one of strings, and another with their corresponding function pointers. However, since many of these functions will be different(return and accept different things), this approach won't work. I also thought of making an array of structs with a name property and a function pointer property, however once again due to the varied nature of the functions I'll be using, this won't work. So, what's the best way to execute a function based on the input of a string? How do I map a string to a certain function? I'm not very familiar with function pointers so I may be missing something. Thank you guys for the help :)

    Read the article

  • Printing distinct integers in an array

    - by ???
    I'm trying to write a small program that prints out distinct numbers in an array. For example if a user enters 1,1,3,5,7,4,3 the program will only print out 1,3,5,7,4. I'm getting an error on the else if line in the function checkDuplicate. Here's my code so far: import javax.swing.JOptionPane; public static void main(String[] args) { int[] array = new int[10]; for (int i=0; i<array.length;i++) { array[i] = Integer.parseInt(JOptionPane.showInputDialog("Please enter" + "an integer:")); } checkDuplicate (array); } public static int checkDuplicate(int array []) { for (int i = 0; i < array.length; i++) { boolean found = false; for (int j = 0; j < i; j++) if (array[i] == array[j]) { found = true; break; } if (!found) System.out.println(array[i]); } return 1; } }

    Read the article

  • how to merge two ordered list of objects?

    - by bhavna raghuvanshi
    public class ListMerge { public static void main( String[] args) { Scanner input = new Scanner(System.in); System.out.println ("Input length of arraylist 1:"); int n = input.nextInt(); ArrayList x = new ArrayList(); ArrayList y = new ArrayList(); for (int i = 0; i < n; i++) { System.out.println ("Input x[ " + i +"] :" ); x.add(new Integer(i)); } System.out.println ("Input length of arraylist 2:"); int m = input.nextInt(); for (int i = 0; i < m; i++) { System.out.println ("Input y[ " + i +"] :" ); y.add(new Integer(i)); } List<Integer> all = new ArrayList<Integer>(); all.addAll(x); all.addAll(y); System.out.println(all); } } I did this but its not taking values from user. pls tell me why....

    Read the article

  • multiplying all elements in an array by an outside number?

    - by prodo
    I need to multiple all the values in an array by 3000 which in turn would create a new array that I will use to subtract from another array. I've tried to create a separate method that would do that for me but all I got back in the multiplied array was a bunch of numbers and symbols strangely? here is the code that I wrote public static void main(String[] args) { int numberOfTaxpayers = Integer.parseInt(JOptionPane.showInputDialog("Enter how many users you would like to calculate taxes for: "); int[] usernumChild = new int[numberOfTaxPayers]; for (int i = 0; i < usernumChild.length; i++) { usernumChild[i] = Integer.parseInt(JOptionPane.showInputDialog("Enter number of children for user "+ (i+1) +": ")); }//this for loop finds out the number of children per user so we can later multiply each input by 3000 to create an array that determine dependency exemption for each user int[] depndExemp = multiply(usernumChild, 3000);//this was the calling of the multiply method... somewhere here is the error!! }//end main method public static int[] multiply(int[] children, int number) { int array[] = new int[children.length]; for( int i = 0; i < children.length; i++) { children[i] = children[i] * number; }//end for return array; }//this is the method that I was shown in a previous post on how to create return an array in this the dependency exemption array but when I tested this by printing out the dependency array all I received were a jumble of wrong numbers.

    Read the article

  • Project Euler #3

    - by Alex
    Question: The prime factors of 13195 are 5, 7, 13 and 29. What is the largest prime factor of the number 600851475143? I found this one pretty easy, but running the file took an extremely long time, it's been going on for a while and the highest number I've got to is 716151937. Here is my code, am I just going to have a wait or is there an error in my code? //User made class public class Three { public static boolean checkPrime(long p) { long i; boolean prime = false; for(i = 2;i<p/2;i++) { if(p%i==0) { prime = true; break; } } return prime; } } //Note: This is a separate file public class ThreeMain { public static void main(String[] args) { long comp = 600851475143L; boolean prime; long i; for(i=2;i<comp/2;i++) { if(comp%i==0) { prime = Three.checkPrime(i); if(prime==true) { System.out.println(i); } } } } }

    Read the article

  • vs2002: c# multi threading question..

    - by dotnet-practitioner
    I would like to invoke heavy duty method dowork on a separate thread and kill it if its taking longer than 3 seconds. Is there any problem with the following code? class Class1 { /// <summary> /// The main entry point for the application. /// </summary> /// [STAThread] static void Main(string[] args) { Console.WriteLine("starting new thread"); Thread t = new Thread(new ThreadStart(dowork)); t.Start(); DateTime start = DateTime.Now; TimeSpan span = DateTime.Now.Subtract(start); bool wait = true; while (wait == true) { if (span.Seconds>3) { t.Abort(); wait = false; } span = DateTime.Now.Subtract(start); } Console.WriteLine("ending new thread after seconds = {0}", span.Seconds); Console.WriteLine("all done"); Console.ReadLine(); } static void dowork() { Console.WriteLine("doing heavy work inside hello"); Thread.Sleep(7000); Console.WriteLine("*** finished**** doing heavy work inside hello"); } }

    Read the article

  • Java: Efficient Equivalent to Removing while Iterating a Collection

    - by Claudiu
    Hello everyone. We all know you can't do this: for (Object i : l) if (condition(i)) l.remove(i); ConcurrentModificationException etc... this apparently works sometimes, but not always. Here's some specific code: public static void main(String[] args) { Collection<Integer> l = new ArrayList<Integer>(); for (int i=0; i < 10; ++i) { l.add(new Integer(4)); l.add(new Integer(5)); l.add(new Integer(6)); } for (Integer i : l) { if (i.intValue() == 5) l.remove(i); } System.out.println(l); } This, of course, results in: Exception in thread "main" java.util.ConcurrentModificationException ...even though multiple threads aren't doing it... Anyway. What's the best solution to this problem? "Best" here means most time and space efficient (I realize you can't always have both!) I'm also using an arbitrary Collection here, not necessarily an ArrayList, so you can't rely on get.

    Read the article

  • extra storage merge sort

    - by davit-datuashvili
    I need make a merge sort using an additional array. Here is my code: public class extra_storage{ public static void main(String[]args) { int x[]=new int[]{12,9,4,99,120,1,3,10}; int a[]=new int[x.length]; mergesort(x,0,x.length-1,a); for (int i=0;i<x.length;i++){ System.out.println(x[i]); } } public static void mergesort(int x[],int low,int high, int a[]){ if (low>=high) { return; } int middle=(low+high)/2; mergesort(x,low,middle,a); mergesort(x,middle+1,high,a); int k; int lo=low; int h=high; for (k=low;k<high;k++) if ((lo<=middle ) && ((h>high)||(x[lo]<x[h]))){ a[k]=x[lo++]; } else { a[k]=x[h++]; } for (k=low;k<=high;k++){ x[k]=a[k]; } } } But something is wrong. When I run it the output is this: 1 0 3 0 4 0 9 0 What is the problem?

    Read the article

  • How do I code a tree of objects in Haskell with pointers to parent and children?

    - by axilmar
    I've got the following problem: I have a tree of objects of different classes where an action in the child class invalidates the parent. In imperative languages, it is trivial to do. For example, in Java: public class A { private List<B> m_children = new LinkedList<B>(); private boolean m_valid = true; public void invalidate() { m_valid = false; } public void addChild(B child) { m_children.add(child); child.m_parent = this; } } public class B { public A m_parent = null; private int m_data = 0; public void setData(int data) { m_data = 0; m_parent.invalidate(); } } public class Main { public static void main(String[] args) { A a = new A(); B b = new B(); b.setData(0); //invalidates A } } How do I do the above in Haskell? I cannot wrap my mind around this, since once I construct an object in Haskell, it cannot be changed. I would be much obliged if the relevant Haskell code is posted.

    Read the article

  • Pass reference to ArrayLists to a method.

    - by bhavna raghuvanshi
    here is the whole program: public class ListMerge { public static void main( String[] args) { Scanner input = new Scanner(System.in); System.out.println ("Input length of arraylist 1:"); int n = input.nextInt(); ArrayList x = new ArrayList(); ArrayList y = new ArrayList(); for (int i = 0; i < n; i++) { System.out.println ("Input x[ " + i +"] :" ); x.add(new Integer(i)); } System.out.println ("Input length of arraylist 2:"); int m = input.nextInt(); for (int i = 0; i < m; i++) { System.out.println ("Input y[ " + i +"] :" ); y.add(new Integer(i)); } } list int merge(ArrayList x, ArrayList y) { List all = new ArrayList(); all.addAll(x); all.addAll(y); System.out.println(all); return all; } } also tell me how do i call the function merge?

    Read the article

  • Java Socket Closes After Connection?

    - by Matthew
    Why does this port/socket close once a connection has been made by a client? package app; import java.io.*; import java.net.*; public class socketServer { public static void main(String[] args) { int port = 3333; boolean socketBindedToPort = false; try { ServerSocket ServerSocketPort = new ServerSocket(port); System.out.println("SocketServer Set Up on Port: " + port); socketBindedToPort = true; if(socketBindedToPort == true) { Socket clientSocket = null; try { clientSocket = ServerSocketPort.accept();//This method blocks until a socket connection has been made to this port. System.out.println("Waiting for client connection on port:" + port); /** THE CLIENT HAS MADE A CONNECTION **/ System.out.println("CLIENT IS CONENCTED"); } catch (IOException e) { System.out.println("Accept failed: " + port); System.exit(-1); } } else { System.out.println("Socket did not bind to the port:" + port); } } catch(IOException e) { System.out.println("Could not listen on port: " + port); System.exit(-1); } } }

    Read the article

  • How do i set this window to topmost?

    - by acidzombie24
    How do i set my window above all other? I need a bad but noticeable msg box that closes on its own. Msg is a dummy form which is empty. All i want is its title. The problems with the code is the window isnt created 0,0 (its just whereever windows feels like putting it). The width is correct but i notice if i click firefox or another app window my app doesnt pop up. I know it is being shown bc i can see it in the taskbar at the bottom for a brief second. So the bugs so far Doesnt go topmost if i click another app Isnt 0,0 How do i fix this? { var msg = new Msg(); msg.Text = (has ? "*" : "+") + args[0]; msg.TopMost = true; msg.Width = 2000; msg.Top = 0; msg.Left = 0; msg.Show(); System.Threading.Thread.Sleep(1000); msg.Close(); }

    Read the article

  • Multi threading question..

    - by dotnet-practitioner
    I would like to invoke heavy duty method dowork on a separate thread and kill it if its taking longer than 3 seconds. Is there any problem with the following code? class Class1 { /// <summary> /// The main entry point for the application. /// </summary> [STAThread] static void Main(string[] args) { Console.WriteLine("starting new thread"); Thread t = new Thread(new ThreadStart(dowork)); t.Start(); DateTime start = DateTime.Now; TimeSpan span = DateTime.Now.Subtract(start); bool wait = true; while (wait == true) { if (span.Seconds > 3) { t.Abort(); wait = false; } span = DateTime.Now.Subtract(start); } Console.WriteLine("ending new thread after seconds = {0}", span.Seconds); Console.WriteLine("all done"); Console.ReadLine(); } static void dowork() { Console.WriteLine("doing heavy work inside hello"); Thread.Sleep(7000); Console.WriteLine("*** finished**** doing heavy work inside hello"); } }

    Read the article

  • Ninject: Singleton binding syntax?

    - by Rosarch
    I'm using Ninject 2.0 for the .Net 3.5 framework. I'm having difficulty with singleton binding. I have a class UserInputReader which implements IInputReader. I only want one instance of this class to ever be created. public class MasterEngineModule : NinjectModule { public override void Load() { // using this line and not the other two makes it work //Bind<IInputReader>().ToMethod(context => new UserInputReader(Constants.DEFAULT_KEY_MAPPING)); Bind<IInputReader>().To<UserInputReader>(); Bind<UserInputReader>().ToSelf().InSingletonScope(); } } static void Main(string[] args) { IKernel ninject = new StandardKernel(new MasterEngineModule()); MasterEngine game = ninject.Get<MasterEngine>(); game.Run(); } public sealed class UserInputReader : IInputReader { public static readonly IInputReader Instance = new UserInputReader(Constants.DEFAULT_KEY_MAPPING); // ... public UserInputReader(IDictionary<ActionInputType, Keys> keyMapping) { this.keyMapping = keyMapping; } } If I make that constructor private, it breaks. What am I doing wrong here?

    Read the article

  • Writing a recursive sorting algorithm of an array of integers

    - by 12345
    I am trying to write a recursive sorting algorithm for an array of integers. The following codes prints to the console: 3, 5, 2, 1, 1, 2, 6, 7, 8, 10, 20 The output should be sorted but somehow "it doesn't work". public static void main(String[] args) { int[] unsortedList = {20, 3, 1, 2, 1, 2, 6, 8, 10, 5, 7}; duplexSelectionSort(unsortedList, 0, unsortedList.length-1); for (int i = 0; i < unsortedList.length; i++) { System.out.println(unsortedList[i]); } } public static void duplexSelectionSort( int[] unsortedNumbers, int startIndex, int stopIndex) { int minimumIndex = 0; int maximumIndex = 0; if (startIndex < stopIndex) { int index = 0; while (index <= stopIndex) { if (unsortedNumbers[index] < unsortedNumbers[minimumIndex]) { minimumIndex = index; } if (unsortedNumbers[index] > unsortedNumbers[maximumIndex]) { maximumIndex = index; } index++; } swapEdges(unsortedNumbers, startIndex, stopIndex, minimumIndex, maximumIndex); duplexSelectionSort(unsortedNumbers, startIndex + 1, stopIndex - 1); } } public static void swapEdges( int[] listOfIntegers, int startIndex, int stopIndex, int minimumIndex, int maximumIndex) { if ((minimumIndex == stopIndex) && (maximumIndex == startIndex)) { swap(listOfIntegers, startIndex, stopIndex); } else { if (maximumIndex == startIndex) { swap(listOfIntegers, maximumIndex, stopIndex); swap(listOfIntegers, minimumIndex, startIndex); } else { swap(listOfIntegers, minimumIndex, startIndex); swap(listOfIntegers, maximumIndex, stopIndex); } } } public static void swap(int[] listOfIntegers, int index1, int index2) { int savedElementAtIndex1 = listOfIntegers[index1]; listOfIntegers[index1] = listOfIntegers[index2]; listOfIntegers[index2] = savedElementAtIndex1; }

    Read the article

< Previous Page | 114 115 116 117 118 119 120 121 122 123 124 125  | Next Page >