Üdvözletem kedves fórumlakók, kihívást keresők!
Lenne itt egy feladatom, amihez segítséget szeretnék kérni. A feladat a következő:
Keszitsen olyan bash programot amely beolvas egy text file-bol egy grafot
es ebben megtalalja a leghosszabb utat ket a programunknak megadott csucs kozott.
A text file minden egyes sora egy graf elet irjon le pl: "1-3", "4-2" stb.
Ehez annyit tennék hozzá hogy megvan az alap program azon változata mely a legrövidebb utat keresi ki.
De ezt még ki kellene bővíteni annyival, hogy ne mi adjuk meg a kezdő és a végpontot,
hanem a program bejárja az összes lehetséges utat az összes csúcsból kiindulva.
Valamint ellenőrizni kell hogy ne legyen benne kör.
Itt a graf.txt tartalma:
1-2
2-3
2-4
3-5
4-6
4-7
Ehez az elkészített program részletekben:
Ez a része felel a legrövidebb kiválasztásáért(ha minden igaz):
cnt=1;
sor=`cat $1 | wc -l`;
sor=`expr $sor + 1`;
min=`cat $1 | head -n 1 | tail -n 1 | wc -L`
minstr=`cat $1 | head -n 1 | tail -n 1`
while [ $sor != $cnt ]
do
if [ $min -gt `cat $1 | head -n $cnt | tail -n 1 | wc -L` ]
then
min=`cat $1 | head -n $cnt | tail -n 1 | wc -L`;
minstr=`cat $1 | head -n $cnt | tail -n 1`;
fi
cnt=`expr $cnt + 1`;
done
echo $minstr;
Előre is köszönöm Minden kedves segítő egyénnek hogy fogalkozik a problémámmal!