algorytm.org

Implementacja w JavaScript

Baza Wiedzy
wersja offline serwisu przeznaczona na urządzenia z systemem Android
Darowizny
darowiznaWspomóż rozwój serwisu
Nagłówki RSS
Artykuły
Implementacje
Komentarze
Forum
Bookmarki






Sonda
Implementacji w jakim języku programowania poszukujesz?

Szukanie połówkowe (binarne) - Implementacja w JavaScript
Ocena użytkownikóww: *****  / 1
SłabyŚwietny
Nadesłany przez Dominik Goździuk, 05 marca 2012 23:29
Kod przedstawiony poniżej przedstawia główną część rozwiązania problemu.
Pobierz pełne rozwiązanie.

Jeżeli nie odpowiada Ci sposób formatowania kodu przez autora skorzystaj z pretty printer'a i dostosuj go automatycznie do siebie.

szukanie_polowkowe_js.html:
<!--
	Dominik Goździuk
	Szukanie połówkowe
	www.algorytm.org
-->
<html>
<body>

	<script type="text/javascript">
		
		var tab = new Array(45,24,56,43,78,67,25,7,58,95,69,49,32,1);
		document.write("Tablica: ");
		sortuj(tab);
		//Wyświetlenie tablicy
		for (zmienna in tab) {
			document.write(tab[zmienna] + ", ");
		}
		
		// Funkcja sortująca tablicę
		function sortuj(tab) {
			for (i = 0; i < tab.length; i++) {
				min = i+1;
				for (j = i+1; j < tab.length; j++) {
					if (tab[min] > tab[j]) {
						min = j;
					}
				}
				if (tab[min] < tab[i]) {
					tmp = tab[i];
					tab[i] = tab[min];
					tab[min] = tmp;
				}
			}
		}
		
		function szukaj() {
			//Pobranie liczby podanej przez uzytkownika
			var szukana = document.forms['formularz'].liczba.value;
			var p = 0; //indeks pierwszego elementu tablicy
			var k = tab.length-1; //indeks ostatniego elementu tablicy
			
			while (p <= k) {
				s = Math.floor((p+k)/2); // zaokrągalmy liczbę aby dostać część całkowitą
				if (tab[s] == szukana) {
					alert("Podana liczba znajduje sie w tablicy");
					return false;
				}
				if (tab[s] > szukana) {
					k = s-1;
				}
				else {
					p = s+1;
				}
			}
			alert("Podana liczba nie znajduje sie w tablicy");
			return false;
		}
		
		
	</script>

	<form id="formularz" action="">
		<br />Podaj szukaną liczbę: <input type="text" name="liczba" />
		<button onclick="return szukaj()">Szukaj</button>
	</form>
	
</body>
</html>
Dodaj komentarz