Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
Groupe3-TicTacToe
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
BAHRMAN Louis
Groupe3-TicTacToe
Commits
49d11e8c
Commit
49d11e8c
authored
Apr 21, 2020
by
Le noob du 53
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
mise à jour
parent
4f5ab9d7
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
31 additions
and
14 deletions
+31
-14
Arbre.class
build/classes/tictactoecodingame/Arbre.class
+0
-0
ArbreMinMax.class
build/classes/tictactoecodingame/ArbreMinMax.class
+0
-0
AlgoRecherMinMax1.java
src/tictactoecodingame/AlgoRecherMinMax1.java
+11
-3
Arbre.java
src/tictactoecodingame/Arbre.java
+16
-8
ArbreMinMax.java
src/tictactoecodingame/ArbreMinMax.java
+4
-3
No files found.
build/classes/tictactoecodingame/Arbre.class
View file @
49d11e8c
No preview for this file type
build/classes/tictactoecodingame/ArbreMinMax.class
View file @
49d11e8c
No preview for this file type
src/tictactoecodingame/AlgoRecherMinMax1.java
View file @
49d11e8c
...
...
@@ -11,11 +11,11 @@ import java.util.ArrayList;
/**
*
* @author senda
*/
public class AlgoRecherMinMax1 extends AlgoRecherche {
ArrayList ListCoup;
public
AlgoRecherMinMax1
()
{
/*
public AlgoRecherMinMax1() {
}
...
...
@@ -26,4 +26,12 @@ public class AlgoRecherMinMax1 extends AlgoRecherche {
return ;
}
}
}*/
/* L'idée c'est :
- Créer un arbre de coups :
On récupère les coups dispo
On fait toutes les possibilités d'enchaînement de coups (<N, <MaxCoupsRestants)
- On applique MinMax
- On rend le meilleur coup selon notre algorythme
*/
\ No newline at end of file
src/tictactoecodingame/Arbre.java
View file @
49d11e8c
...
...
@@ -12,19 +12,23 @@ import java.util.ArrayList;
* @author senda
*/
public
class
Arbre
{
pr
ivate
Fraction
value
;
pr
ivate
ArrayList
<
Coup
>
coups
;
pr
ivate
ArrayList
<
Arbre
>
fils
;
public
static
int
N
=
5
;
pr
otected
Fraction
value
;
pr
otected
ArrayList
<
Coup
>
coups
;
pr
otected
ArrayList
<
Arbre
>
fils
;
// Les constructeurs :
public
Arbre
(){
}
public
Arbre
(
Fraction
value
,
ArrayList
coups
,
ArrayList
fils
){
this
.
value
=
value
;
this
.
fils
=
fils
;
this
.
coups
=
coups
;
}
public
Arbre
(
int
den
,
int
num
,
ArrayList
coups
,
ArrayList
fils
){
public
Arbre
(
int
num
,
int
den
,
ArrayList
coups
,
ArrayList
fils
){
this
.
value
.
den
=
den
;
this
.
value
.
num
=
num
;
this
.
fils
=
fils
;
...
...
@@ -47,7 +51,7 @@ public class Arbre {
this
.
value
=
value
;
}
public
Arbre
(
int
den
,
int
num
){
public
Arbre
(
int
num
,
int
den
){
this
.
value
.
den
=
den
;
this
.
value
.
num
=
num
;
}
...
...
@@ -57,7 +61,7 @@ public class Arbre {
return
(
value
.
getNote
());
}
public
ArrayList
getfils
(){
public
ArrayList
<
Arbre
>
getfils
(){
return
(
fils
);
}
...
...
@@ -65,6 +69,10 @@ public class Arbre {
return
(
coups
);
}
public
Fraction
getFrac
(){
return
(
this
.
value
);
}
//Des choses sans nom :
public
void
setvalue
(
Fraction
value
){
this
.
value
=
value
;
...
...
src/tictactoecodingame/ArbreMinMax.java
View file @
49d11e8c
...
...
@@ -6,6 +6,7 @@
package
tictactoecodingame
;
import
java.util.ArrayList
;
import
static
tictactoecodingame
.
Generator
.
random_tests
;
/**
*
...
...
@@ -123,7 +124,7 @@ public class ArbreMinMax {
return
m
;
}
public
void
MinMax
(
int
h
){
public
void
MinMax
(
int
h
,
Plateau
plateau
,
int
nb_tests
){
// h = hauteur, on l'incrémente comme un compteur
// N est la profondeur à explorer en MinMax, toutes les feuilles en N+1 sont évaluées
// La racine est un Max, donc impair -> Max, pair -> Min
...
...
@@ -141,11 +142,11 @@ public class ArbreMinMax {
}
int
a
=
this
.
getfils
().
size
();
for
(
int
i
=
0
;
i
<
a
;
i
++){
this
.
getfils
().
get
(
i
).
MinMax
(
h
+
1
);
this
.
getfils
().
get
(
i
).
MinMax
(
h
+
1
,
plateau
,
nb_tests
);
}
}
else
{
//On a h > N, on utilise la fonction d'évaluation
int
i
=
random_tests
(
plateau
,
nb_tests
);
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment