FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Gestion d'un système client-serveur.
Utilisation de SearchStringList. Emptypar Klaus Ven 17 Mai 2024 - 14:02

» item_index(résolu)
Utilisation de SearchStringList. Emptypar jjn4 Mar 14 Mai 2024 - 19:38

» Bataille terrestre
Utilisation de SearchStringList. Emptypar jjn4 Lun 13 Mai 2024 - 15:01

» SineCube
Utilisation de SearchStringList. Emptypar Marc Sam 11 Mai 2024 - 12:38

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
Utilisation de SearchStringList. Emptypar Marc Sam 11 Mai 2024 - 12:22

» Philharmusique
Utilisation de SearchStringList. Emptypar jjn4 Ven 10 Mai 2024 - 13:58

» PANORAMIC V 1
Utilisation de SearchStringList. Emptypar papydall Jeu 9 Mai 2024 - 3:22

» select intégrés [résolu]
Utilisation de SearchStringList. Emptypar jjn4 Mer 8 Mai 2024 - 17:00

» number_mouse_up
Utilisation de SearchStringList. Emptypar jjn4 Mer 8 Mai 2024 - 11:59

» Aide de PANORAMIC
Utilisation de SearchStringList. Emptypar jjn4 Mer 8 Mai 2024 - 11:16

» trop de fichiers en cours
Utilisation de SearchStringList. Emptypar lepetitmarocain Mer 8 Mai 2024 - 10:43

» Je teste PANORAMIC V 1 beta 1
Utilisation de SearchStringList. Emptypar papydall Mer 8 Mai 2024 - 4:17

» bouton dans autre form que 0(résolu)
Utilisation de SearchStringList. Emptypar leclode Lun 6 Mai 2024 - 13:59

» KGF_dll - nouvelles versions
Utilisation de SearchStringList. Emptypar Klaus Lun 6 Mai 2024 - 11:41

» @Jack
Utilisation de SearchStringList. Emptypar Jack Mar 30 Avr 2024 - 20:40

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Mai 2024
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
2728293031  
CalendrierCalendrier
Le Deal du moment :
Funko POP! Jumbo One Piece Kaido Dragon Form : ...
Voir le deal

 

 Utilisation de SearchStringList.

Aller en bas 
2 participants
AuteurMessage
Pedro

Pedro


Nombre de messages : 1561
Date d'inscription : 19/01/2014

Utilisation de SearchStringList. Empty
MessageSujet: Utilisation de SearchStringList.   Utilisation de SearchStringList. EmptyJeu 14 Jan 2016 - 13:34

Bonjour.

@Klaus.

Je serais intéressé de connaître l'algorithme utilisé dans cette fonction.

Je pense également que cette fonction pourrait être optimisée en temps d'exécution.

Car la recherche de 1.000 éléments s'exécute en 38 sec. !!

Merci Klaus.
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12301
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Utilisation de SearchStringList. Empty
MessageSujet: Re: Utilisation de SearchStringList.   Utilisation de SearchStringList. EmptyJeu 14 Jan 2016 - 13:53

Le principe est le suivant:
- si la StringList n'est pas triée, on la parcourt à partir du début et un s'arrête si l'enregistrement est trouvé
- si la StringList est triée en mode 1 (système), on effectue la recherche par une seule commande par la méthode Find de l'objet TStringList - durée incompressible car méthode interne à Delphi
- si la StringList est triée en mode 3 (personnalisée), on utilise une recherche par dichotomie, en comparant chaque chaîne trouvée au critère par une fonctions de comparaison spéciale.

La fonction de comparaison est:
Code:
function ComparerChaine1(sTmp1, sTmp2: string): Integer;
var
  i, n, l1, l2, c1, c2: integer;
begin
// Chaines à comparer
  try
    l1 := length(sTmp1);
    l2 := length(sTmp2);
    n := min(l1,l2);
    for i:=1 to n do begin
      result := ord(sTmp1[i])- ord(sTmp2[i]);
      if result<>0 then exit;
    end;
  except
    result := 0;
  end;
end;
Ce qui est très rapide, en procédant par des pointeurs.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Pedro

Pedro


Nombre de messages : 1561
Date d'inscription : 19/01/2014

Utilisation de SearchStringList. Empty
MessageSujet: Utilisation de SearchStringList.   Utilisation de SearchStringList. EmptyJeu 14 Jan 2016 - 14:00

Bonjour.

Merci Klaus de la réponse rapide.
Enfin, je croyais que tu avais la main sur la fonction 'Find', mais je vois que ce n'est pas le cas.
Dommage.
Revenir en haut Aller en bas
Contenu sponsorisé





Utilisation de SearchStringList. Empty
MessageSujet: Re: Utilisation de SearchStringList.   Utilisation de SearchStringList. Empty

Revenir en haut Aller en bas
 
Utilisation de SearchStringList.
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Utilisation de PLAY
» Problème avec la fonction 'instr'.
» Utilisation de excel_write
» utilisation inkey$
» Utilisation de MAIN_MENU

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: