
80_LEGNAGYOBB_KIVALASZTASA
80_LEGNAGYOBB_KIVALASZTASA

import random
Modul importálása: A random modul lehetővé teszi véletlenszámok generálását, ami itt az a lista feltöltéséhez szükséges.
n = 20
Változó deklarálása: Beállítjuk az n változót, amely meghatározza, hogy hány számot generálunk (itt 20 darabot).
a = [random.randint(-100, 100) for _ in range(n)] # Véletlenszámok listája -100 és 100 között
Lista létrehozása és feltöltése:
A random.randint(-100, 100) függvény -100 és 100 közötti véletlenszámokat generál.
A for _ in range(n) ciklus 20 darab számot hoz létre és ment el a listába (a).
# Buborékrendezés algoritmus (csökkenő sorrend)
Megjegyzés a kódban: Ez jelzi, hogy az alábbi kódrész buborékrendezési algoritmust alkalmaz, amely a listát csökkenő sorrendbe rendezi.
for i in range(n):
Külső ciklus (20 ismétlés): Ez a ciklus végigmegy a lista minden elemén, hogy elvégezze a buborékrendezést.
for j in range(0, n - i - 1):
Belső ciklus: Ez a ciklus végigmegy az a listán, összehasonlítva az egymás melletti elemeket.
Az n - i - 1 határozza meg, hogy a már rendezett elemeket ne vizsgáljuk újra, így egyre kevesebb összehasonlítás történik minden iterációval.
if a[j] < a[j + 1]:
Összehasonlítás: Ellenőrizzük, hogy az aktuális szám kisebb-e, mint a következő. Ha igen, cserélni kell őket.
a[j], a[j + 1] = a[j + 1], a[j]
Elemek cseréje:
Ha a jelenlegi elem kisebb, akkor a két szám helyet cserél.
Így a nagyobb értékek fokozatosan előre kerülnek, míg a kisebbek hátracsúsznak.
for elem in a: print(elem)Kiírás: A lista minden elemét kiírjuk a konzolra, így láthatjuk a rendezett, csökkenő sorrendű számokat.
import randomn = 20
a = [random.randint(-100, 100)
for _ in range(n)] # Véletlenszámok listája -100 és 100 között#
Buborékrendezés algoritmus (csökkenő sorrend)
for i in range(n):
for j in range(0, n - i - 1):
if a[j] < a[j + 1]:
a[j], a[j + 1] = a[j + 1], a[j]# Lista kiírása
for elem in a:
print(elem)
Repülőtéri
járatok indulási idő szerinti rendezése
Egy nagy nemzetközi repülőtér naponta több száz járatot indít. Az utasoknak és a személyzetnek egyértelműen kell látniuk az indulási időpontokat, hogy hatékonyan szervezhessék az utazásukat. A rendszer beolvassa a járatok indulási idejét, majd a buborékrendezés algoritmus segítségével sorba állítja azokat.
import randomJáratok száman = 20
Véletlenszerű indulási idők (percekben, reggeltől estig)
a = [random.randint(300, 1440)
for _ in range(n)]
Buborékrendezés (csökkenő sorrendben, hogy a korábban induló járatok előre kerüljenek)
for i in range(n):
for j in range(0, n - i - 1): i
f a[j] > a[j + 1]: a[j], a[j + 1] = a[j + 1], a[j]Kiírás formázott időpontokkal (óra:perc)
for indulasi_ido in a:
ora = indulasi_ido // 60
perc = indulasi_ido % 60
print(f"Járat indulása: {ora:02}:{perc:02}")
Hogyan működik ez a repülőtéri rendszer?
1️⃣ A rendszer beolvassa a járatok indulási időpontjait, de az adatok kezdetben rendezetlenek.
2️⃣ Buborékrendezés segítségével csökkenő sorrendbe állítjuk az időpontokat, így a korábban induló járatok kerülnek az első helyekre.
3️⃣ Formázott órák és percek szerint kiírjuk az eredményeket, hogy a repülőtér kijelzője pontosan mutassa a járatok időpontját.
Miért fontos ez?
Az utasok könnyen megtalálhatják az indulás előtt álló járatokat.
A légitársaságok és földi személyzet hatékonyabban tudják kezelni az indulásokat.
Egy ilyen algoritmus segít a járatok optimális tervezésében és a logisztikai folyamatok gyorsításában.