![](https://images.gutefrage.net/media/default/user/12_nmmslarge.png?v=1551279448000)
![](https://images.gutefrage.net/media/user/greenvbuser/1474196979940_nmmslarge__14_0_272_272_ae6344ebb0938a49dafa649664ced996.jpg?v=1474196982000)
Prototype's Antwort ist technisch gesehen richtig und würde so funktionieren. Bei Vier Gewinnt ist Performance-Optimierung auch noch nicht so wichtig. Aber wenn du später komplexere Spiele programmieren möchtest, solltest du vermeiden, nach jedem Spielzug die komplette Matrix zu durchlaufen.
Fakt ist: Ein Gewinn kann nur an der Stelle entstehen, an der du den letzten Stein gesetzt hast. Somit musst du lediglich von der Position des letzten Steines aus (spielfeld[steinPosX][steinPosY]) in jede mögliche Richtung drei Felder weit prüfen. Senkrecht nach oben musst du z.B. auch nicht prüfen, weil der letzte Stein logischerweise nicht unter einem anderen Stein liegen kann.