# Lineare Suche in einem Array



## updater (13. Nov 2010)

Hallo Leute,

Ich will mithilfe der linearen Suche ein gesamtes Array durchsuchen. Falls in dem Array 2 Elemente gleich sind, will ich, dass mir die Funktion die Stelle des letzten Elements ausgibt und nicht die des ersten Elements. 
Wie kann ich das realisieren? Bisher hab ich nur eine Funktion, die mir die erste Stelle ausgibt:


```
public static int lineareSuche( int gesucht,  int array[]) {
		
		int i=0;
		
	    while ( i < array.length) {
	        if (array[i] == gesucht) {
	        	return i;
	                    
	        }
	        i++;
	      
	    }
	    return -1;
	}

public static void main(String[] args) {

			int [] F = {2, 4, 5, 4, 6, 7, 8, 9, 11, 4};
			print("search key = ");
			int key = readInt();
			
			println ("search result linear: " + lineareSuche(key,F));
			}
```

Danke schonmal im Vorraus!

mfg
updater


----------



## eRaaaa (13. Nov 2010)

Ähm...sind nur minimale Änderungen, auf die kommst du sicherlich selbst. Du darfst eben nicht direkt return i; schreiben, das verlässt nämlich die Methode. Merke dir stattdessen das i und iteriere weiter.


----------



## XHelp (13. Nov 2010)

Oder das Array von hinten durchlaufen.


----------



## updater (13. Nov 2010)

XHelp hat gesagt.:


> Oder das Array von hinten durchlaufen.



Danke, so ist es wohl am einfachsten


----------

