Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
810 connectés 

  FORUM HardWare.fr
  Programmation
  Algo

  [algo] Tableau et Sous Tableau maximum.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[algo] Tableau et Sous Tableau maximum.

n°1012838
slvn
Posté le 15-03-2005 à 00:28:20  profilanswer
 

Hello,
 
Soit un Tableau de N entier signés, donc positifs et négatifs.
Comment trouver le sous-tableau donc la somme des éléments est maximales :)
 
/sylvain

mood
Publicité
Posté le 15-03-2005 à 00:28:20  profilanswer
 

n°1012859
Evadream -​jbd-
Posté le 15-03-2005 à 01:29:25  profilanswer
 

Tu sépares les nombres positifs des nombres négatifs ?
Si il n'y a que des négatifs, tu prends le maximum, si il n'y que des positifs ou bien des positifs et des négatifs, tu ne prends que les positifs ?
 
[:ddr555], j'ai pas du comprendre qqchose. Par sous tableau, tu entends quoi ? Des éléments qui se suivent ?
 
@+


Message édité par Evadream -jbd- le 15-03-2005 à 01:31:10
n°1012860
slvn
Posté le 15-03-2005 à 01:37:11  profilanswer
 

yep, qui se suivent :D of course :)

n°1012862
jahjah
Posté le 15-03-2005 à 01:44:58  profilanswer
 

donne un exemple

n°1012864
Evadream -​jbd-
Posté le 15-03-2005 à 01:49:54  profilanswer
 

Tu peux extraire tous les nombres positifs qui se suivent déja. Ca te fait une liste, et tu les compares :
 
1 2 3 4 -5 -2 4 8 4 2 -2 1 5 2
 
Tu obtiens comme sous tableaux :
1 2 3 4 (10) | 4 8 4 2 (18) | 1 5 2 (8)
 
Sous tableau max : 4 8 4 2
 
C'est ca que tu veux ?
 

n°1012865
slvn
Posté le 15-03-2005 à 01:55:59  profilanswer
 

un exemple :
[0 0 0 0 0 -1 -1 -1 1 1 -1 -1 -1 -1 0]
il faut extraire [1 1]
 
le truc ca serait d'extraire le "sous-tableau" dont la somme des elements est la plus grande :)
 
(je dis pas que c'est facile mais ca l'air marrange a faire :D)

n°1012866
slvn
Posté le 15-03-2005 à 01:56:54  profilanswer
 

Evadream -> yep je crois que ton exemple n'est pas ok

n°1013004
Evadream -​jbd-
Posté le 15-03-2005 à 10:30:05  profilanswer
 

Pourquoi non ?

n°1013181
slvn
Posté le 15-03-2005 à 12:09:20  profilanswer
 

bah on peut etre extraire un tableau different, dont la somme des elemetns est plus grande. (en fait le tableau max, c'est tt le tableau je crois)

n°1013188
skeye
Posté le 15-03-2005 à 12:13:10  profilanswer
 

Ca ressemble quand même vachement à un exo...[:itm]


---------------
Can't buy what I want because it's free -
mood
Publicité
Posté le 15-03-2005 à 12:13:10  profilanswer
 

n°1013239
slvn
Posté le 15-03-2005 à 12:42:48  profilanswer
 

ouais c'est vrai ca ressemble ;) mais ce n'en n'est pas un..
(enfin je veux dire que personne n'est ici en train de faire mes devoirs)
 
 
Au fait, j'ai deja des elements de reponses.
 
Tout le monde a vu l'algo en O(n3) quand meme :)

n°1013245
Evadream -​jbd-
Posté le 15-03-2005 à 12:48:13  profilanswer
 

slvn a écrit :

bah on peut etre extraire un tableau different, dont la somme des elemetns est plus grande. (en fait le tableau max, c'est tt le tableau je crois)


 
Tu crois ? :)
Je dois pas comprendre ton probleme. Montre moi en quoi mon exemple esrt incorrecte. Je ne vois pas comment extraire un sous tableau dont la somme des élements est plus grande.
 
@+

n°1013252
slvn
Posté le 15-03-2005 à 12:54:35  profilanswer
 

Le tableau est 1 2 3 4 -5 -2 4 8 4 2 -2 1 5 2
 
tu dis que le sous tableau max est 4 8 4 2, hors sa somme vaut "18".
Si j'extrais 4 8 4 2 -2 1 5 2, la somme vaut 24, donc ton tableau n'etait pas maximal.  
 
D'ailleurs le mien non plus,  
ici le tableau max est le tableau lui meme:  1 2 3 4 -5 -2 4 8 4 2 -2 1 5 2


Message édité par slvn le 15-03-2005 à 12:55:07
n°1013316
Evadream -​jbd-
Posté le 15-03-2005 à 13:56:01  profilanswer
 

Suis-je bête, bien entendu =)

n°1013349
jagstang
Pa Capona ಠ_ಠ
Posté le 15-03-2005 à 14:14:48  profilanswer
 

il y a un algo en O(n) pour ça.
 
il ne faut tester que des suites de nombres qui ne commencent PAS par une suite de somme négative

n°1013360
jagstang
Pa Capona ಠ_ಠ
Posté le 15-03-2005 à 14:25:49  profilanswer
 

implémentation en java
 

Code :
  1. public static int maxSubSum3( int [] a )
  2.   {
  3.   int maxSum = 0;
  4.   int thisSum = 0;
  5.   for(int j = 0; j< a.length; j++ ) {
  6.     thisSum += a[j];
  7.     if( thisSum > maxSum )
  8.          maxSum = thisSum;
  9.      else
  10.        if( thisSum < 0 ) {
  11.            thisSum = 0; // resets the start index !
  12.       }
  13.    }
  14. return maxSum;
  15. }

n°1013731
Chronoklaz​m
Posté le 15-03-2005 à 18:13:30  profilanswer
 

On voulait pas un tableau en sortie ? :)


---------------
Scheme is a programmable programming language ! I heard it through the grapevine !
n°1013764
slvn
Posté le 15-03-2005 à 18:31:52  profilanswer
 

non non pas forcement le tableau en sortie, par contre si on a la position du premier et dernier element ca peut le faire :)
 
Y a bien un algo en O(n) je crois :)
mais l'algo est incomplet :/


Message édité par slvn le 15-03-2005 à 18:46:38
n°1013768
Chronoklaz​m
Posté le 15-03-2005 à 18:36:00  profilanswer
 

Citation :


      Sommaire de l’algorithme:
 
      Déterminer récursivement la sous-séquence de somme maximale uniquement dans la première moitié.  
 
      Déterminer récursivement la sous-séquence de somme maximale uniquement dans la deuxième moitié.  
 
      Avec deux boucles consécutives, déterminer la sous-séquence de somme maximale qui débute dans la première moitié et qui termine dans la deuxième moitié.  
 
      Choisir la somme la plus élevée des trois.


Message édité par Chronoklazm le 15-03-2005 à 18:36:18

---------------
Scheme is a programmable programming language ! I heard it through the grapevine !
n°1013776
slvn
Posté le 15-03-2005 à 18:44:37  profilanswer
 

question qui a rien a voir :D
Chronoklazm >>p koi quand fait un copy paste de ton nom, il me rajoute un espace: ex "Chronoklaz m"

n°1013777
skeye
Posté le 15-03-2005 à 18:45:36  profilanswer
 

slvn a écrit :

question qui a rien a voir :D
Chronoklazm >>p koi quand fait un copy paste de ton nom, il me rajoute un espace: ex "Chronoklaz m"


Code :
  1. <b class="s2">Chronoklaz<span class="s0"> </span>m</b>


---------------
Can't buy what I want because it's free -
n°1013778
Chronoklaz​m
Posté le 15-03-2005 à 18:47:02  profilanswer
 

Les dieux du forum n'aiment pas ce mot peut etre :)


Message édité par Chronoklazm le 15-03-2005 à 18:47:27

---------------
Scheme is a programmable programming language ! I heard it through the grapevine !
n°1013779
slvn
Posté le 15-03-2005 à 18:49:07  profilanswer
 

Mais qu'est ce qu'il fout la ce "span"

n°1013856
Chronoklaz​m
Posté le 15-03-2005 à 20:29:37  profilanswer
 

Hum hum ... et la k-ieme plus longue sous-sequence ?  :hello:  


---------------
Scheme is a programmable programming language ! I heard it through the grapevine !
n°1013863
slvn
Posté le 15-03-2005 à 20:36:20  profilanswer
 

héhé, interessant ca!
ca impose de changer d'algo, car celui JagStang ignore les sommes négatives. La k'eme sequence pouvant etre négative :/

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Algo

  [algo] Tableau et Sous Tableau maximum.

 

Sujets relatifs
[CSS] Bordure d'un tableauAlgo de recherche de flou
Centrer un tableau en CSSProbleme de tableau avec des include
Modifier les bordures d'un tableau PHP (débutant inside)Tableau de HashSet
[algo] algo non recursif pour parcourir les niveaux d'un arbre[algo] toutes les permutations d'une chaine de charatere
Un pb de caddie avec session php: tableau dans un tableauPblm -> Script appelant un tableau
Plus de sujets relatifs à : [algo] Tableau et Sous Tableau maximum.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR