Hirdetés
- droidic: Windows 11 önállóság nélküli világ: a kontroll új korszaka
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Brogyi: CTEK akkumulátor töltő és másolatai
- Elektromos rásegítésű kerékpárok
- Luck Dragon: Asszociációs játék. :)
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- GoodSpeed: Pillangóhatás: F billentyű meghibásodása -új gamer számítógépasztal
- bambano: Bambanő háza tája
- Sanyi.mTs: VÉGRE: Óraátállítás konzultáció
Új hozzászólás Aktív témák
-
rootkiller
őstag
Megfejtettem a saját elképzelésem szerint. Amikor az eredeti klaszterközepekhez hozzárendelem az elemeket akkor számolok költséget. Ezek után generálok egy új klaszterközepet, amit véletlenszerűen valamelyik helyett felhasználok, majd ismételten hozzárendelek elemeket a klaszterekhez és költséget számolok. Ezek után összehasonlítok, és ha az új verzió jobb mint a régi akkor eltárolom a régi klaszterközepeket egy segédtömbbe, majd ezt felülírom az új klaszterközepekkel. Ezek után a while-ban a régi és az új klaszterközép tömbböt összehasonlítom hogy egyenlő-e.
A probléma hogy végtelen ciklust generáltam és nem tudom hogy hol. Itt a kód:
function kmedoid($xdata, $k){
// 1. kezdeti elemek kiválasztása
for($i = 1; $i <= $k; $i++){
$middle[$i] = $i;
}
// 2.
do {
// 3. hozzárendelünk minden elemet a legközelebbi klaszterközéphez
$originalCost = 0;
for($i = 1; $i <= 150; $i++){
for($j = 1; $j <= $k; $j++){
$actual = $middle[$j];
if ($xdata[$i] > $xdata[$actual]){
$distance[$j] = $xdata[$i] - $xdata[$actual];
} else {
$distance[$j] = $xdata[$actual] - $xdata[$i];
}
}
$whichCluster[$i] = array_search(min($distance), $distance);
$originalCost = $originalCost + min($distance);
echo $originalCost . "<br>";
}
// 4. véletlenszerűen választunk egy nem klaszterközepet: 0random
do {
$new = rand(1, 150);
} while (!in_array($new, $middle));
$newMiddle = $middle;
$newMiddle[rand(1, $k)] = $new;
// 5. kiszámoljuk a teljes költséget
$newCost = 0;
for($i = 1; $i <= 150; $i++){
for($j = 1; $j <= $k; $j++){
$actual = $newMiddle[$j];
if ($xdata[$i] > $xdata[$actual]){
$distance[$j] = $xdata[$i] - $xdata[$actual];
} else {
$distance[$j] = $xdata[$actual] - $xdata[$i];
}
}
$whichCluster[$i] = array_search(min($distance), $distance);
$newCost = $newCost + min($distance);
echo $newCost . "<br>";
}
// 6. ha s<0 akkor csere 0j 0rand-al és az az új klaszterközép
if ($newCost < $originalCost){
$lastMiddle = $middle;
$middle = $newMiddle;
echo "felülírva<br>";
} else {
$lastMiddle = $middle;
}
}
// 7. addig amíg nincs változás
while ($middle === $lastMiddle);
}
Új hozzászólás Aktív témák
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Kerékpárosok, bringások ide!
- OLED TV topic
- Fejhallgató erősítő és DAC topik
- Battlefield 6
- droidic: Windows 11 önállóság nélküli világ: a kontroll új korszaka
- DUNE médialejátszók topicja
- HiFi műszaki szemmel - sztereó hangrendszerek
- Mibe tegyem a megtakarításaimat?
- sziku69: Fűzzük össze a szavakat :)
- További aktív témák...
- Újszerű Acer Aspire A515 - 15.6"FHD IPS - i5-1335U - 16GB - 512GB SSD - Win11
- Nagyon kedvező áron!Eladó Synology DS923+ Alza Gari 2027.10.23-ig
- Karácsonyra ps4 / ps5 collectors edition és egyéb ritka játékok
- Kedvező Ár! MacBook Pro M1 Pro 14.2 Istyle gari 2026.07.27-ig
- Intel Core i9-9900K, Gigabyte Z390 AORUS Master, Noctua NH-D15
- 16 GB RTX 4080 SUPER HP OMEN - garanciával
- Apple iPhone 16e 128 GB Black Apple Garancia Beszámítás Házhozszállítás
- Telefon felvásárlás!! Samsung Galaxy S25, Samsung Galaxy S25 Plus, Samsung Galaxy S25 Ultra
- GYÖNYÖRŰ iPhone 11 Pro 256GB Midnight Green -1 ÉV GARANCIA -Kártyafüggetlen, MS3370,94% Akkumulátor
- Minis Forum Mini PC MS-A2 Ryzen 9955HX RAM és SSD nélkül 1 év garanciával
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Promenade Publishing House Kft.
Város: Budapest

