algorytm.org

Szukanie elementu minimalnego/maksymalnego



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 elementu minimalnego/maksymalnego
Ocena użytkowników:***** / 151
SłabyŚwietny 
Wpisany przez Tomasz Lubiński, 04 września 2009 19:30

Załóżmy że mamy daną tablicę n-elementów i chcemy odnaleźć w niej element minimalny (bądź maksymalny). Niech będzie to tablica a o indeksach od 1 do n. Czyli kolejne jej elementy oznaczymy: a[1], a[2], a[3], ..., a[n-1], a[n].

By odnaleźć element minimalny podejmiemy następujące kroki:


Operację odnajdowania minimalnego elementu w tablicy możemy zapisać następującym schematem blokowym:

schemat blokowy - element minimalny w tablicy


Przykład:

Niech będzie dana tablica 5-elementowa, a = {4, 6, 2, 1, 3}.
Na początku inicjujemy wynik = a[1] = 4.
Następnie przeglądamy kolejne elementy tablicy:
a[2] < wynik? 6 nie jest mniejsze od 4, zatem idziemy do kolejnego elementu,
a[3] < wynik? 2 jest mniejsze od 4, zatem aktualizujemy wynik = a[3] = 2,
a[4] < wynik? 1 jest mniejsze od 2, zatem aktualizujemy wynik = a[4] = 1,
a[5] < wynik? 3 nie jest mniejsze od 1, to był ostatni element tablicy zatem zakończyliśmy przeszukiwanie tablicy,
Zatem ostateczny wynik to 1.

By odnaleźć element maksymalny podejmiemy następujące kroki:


Operację odnajdowania maksymalnego elementu w tablicy możemy zapisać następującym schematem blokowym:

schemat blokowy - element maksymalny w tablicy


Przykład:

Niech będzie dana tablica 5-elementowa, a = {4, 6, 2, 1, 3}.
Na początku inicjujemy wynik = a[1] = 4.
Następnie przeglądamy kolejne elementy tablicy:
a[2] > wynik? 6 jest większe od 4, zatem aktualizujemy wynik = a[2] = 6,
a[3] > wynik? 2 nie jest większe od 6, zatem przechodzimy do kolejnego elementu,
a[4] > wynik? 1 nie jest większe od 6, zatem przechodzimy do kolejnego elementu,
a[5] > wynik? 3 nie jest większe od 6, to był ostatni element tablicy zatem zakończyliśmy przeszukiwanie tablicy,
Zatem ostateczny wynik to 6.


Implementacje
AutorJęzyk
programowania
KomentarzOtwórzPobierzOcena
Tomasz LubińskiC#MS Visual Studio .net
.cs
.cs
***** / 14
Tomasz LubińskiC/C++
.cpp
.cpp
***** / 15
MarianC/C++C++
.cpp
.cpp
***** / 6
Krzysztof SośnierzC/C++C++ templates
.cpp
.cpp
***** / 4
Krzysztof KozłowskiC/C++Implementacja bez użycia tablicy
.cpp
.cpp
***** / 3
TomaszC/C++C++ liczby zmiennoprzecinkowe
.cpp
.cpp
***** / 4
Adam CZC/C++Klasa C++
.cpp
.cpp
***** / 2
Magdalena DziesińskaC/C++C z użyciem funkcji
.cpp
.cpp
***** / 18
Tomasz LubińskiDelphi/Pascal
.pas
.pas
***** / 1
Adam ChrapkowskiHaskell
.hs
.hs
***** / 0
Tomasz LubińskiJava
.java
.java
***** / 8
Dominik GoździukJavaScript
.js
.js
***** / 4
Jakub KoniecznyJava_Block
.jbf
.jbf
***** / 0
Dominik GoździukPerl
.pl
.pl
***** / 0
_marass_Phpwykorzystana pętla for
.php
.php
***** / 3
seveN.Phpwykorzystana pętla while
.php
.php
***** / 1
Jakub KoniecznyPython
.py
.py
***** / 6
Nikodem SolarzRuby4 metody do obliczania wartości minimalnej i maksymalnej z tablicy
.rb
.rb
***** / 0
 
Dodaj własną implementację tego algorytmu
  • Zaloguj się na stronie
Plik:
Język
programowania:
Komentarz:
  By móc dodać implementacje zaloguj się na stronie

Poprawiony: 26 maja 2011 20:52
Komentarze
photo
+10 # Nitro Blade 2010-02-10 14:05
Świetny opis, najlepsze są te omówienia na przykładach, dają dużo do myślenia i od razu łatwiej załapać o co chodzi. Thx
Odpowiedz | Odpowiedz z cytatem | Cytować
photo
+6 # Karoliński 2011-07-23 12:41
Super strona :) przyda sięę na początku studiów
Odpowiedz | Odpowiedz z cytatem | Cytować
photo
+4 # Art 2012-03-05 17:53
dzięki Bogu za tą stronę :)
Odpowiedz | Odpowiedz z cytatem | Cytować
photo
-1 # Anna_studentka 2013-10-07 17:18
A nie jest po starcie potrzebny równoległobok z wypisaniem: pobierz a, n?
Odpowiedz | Odpowiedz z cytatem | Cytować
photo
+1 # tak 2017-02-27 10:49
Cytuję Anna_studentka:
A nie jest po starcie potrzebny równoległobok z wypisaniem: pobierz a, n?

TAK
Odpowiedz | Odpowiedz z cytatem | Cytować
photo
+1 # LucJAN 2018-01-05 23:30
Dla czego na początku jest i=2???
Odpowiedz | Odpowiedz z cytatem | Cytować
photo
+3 # Tomasz Lubiński 2019-10-02 12:47
Bo pierwszy element jest na początku naszym największym/najmniejszym znalezionym elementem i porównywanie z kolejnymi elementami zaczynamy od elementu drugiego.
Odpowiedz | Odpowiedz z cytatem | Cytować
Dodaj komentarz