Tableau des chaînes partagées Microsoft Excel
La table des chaînes partagées est et la norme Open XML, telle que définie par la norme ISO - ISO / IEC 29500-1: 2016 (E)
Définition officielle des chaînes partagées (citée dans le document ISO)
Table de chaînes partagée
Les valeurs de chaîne peuvent être stockées directement à l'intérieur des éléments de cellule de feuille de calcul; cependant, le stockage de la même valeur dans plusieurs éléments de cellule peut entraîner des pièces de feuille de calcul très volumineuses, ce qui peut entraîner une dégradation des performances. La table de chaînes partagée est une liste indexée de valeurs de chaîne, partagée dans le classeur, qui permet aux implémentations de stocker les valeurs une seule fois.
La norme ISO sur les chaînes partagées peut être téléchargée à partir de
https://standards.iso.org/ittf/PubliclyAvailableStandards/c071691_ISO_IEC_29500-1_2016.zip
Réponses aux questions sur ce sujet
Question 1: les chaînes partagées sont-elles utilisées dans l'application Excel elle-même, ou uniquement lors de l'enregistrement des données?
Réponse:
Les chaînes partagées sont utilisées par Excel uniquement au moment de l'enregistrement du document, IE, uniquement dans le but de stocker la feuille de calcul en tant que fichier sur le stockage.
Toutefois, lorsque le fichier est ouvert pour l'affichage, les cellules sont remplies avec des valeurs de chaîne réelles extraites de la table des chaînes partagées.
-
Question 2: Quel serait alors un exemple d'algorithme pour trier sur le terrain? Tout langage est parfait (c, c #, c ++, python).
Réponse:
Pour une application comme Excel, je suppose qu'une variante propriétaire spéciale du
tri rapide est l'algorithme le plus susceptible d'être utilisé pour trier les valeurs de chaîne.
Excel a une limite de 1 048 576 lignes. Pour cette taille, le tri rapide est définitivement un gagnant. Le tri rapide peut produire un résultat très efficace pour un ensemble de données de cette ampleur.
Voici le lien vers l'implémentation du tri rapide en C ++ pour trier les chaînes:
http://www.cplusplus.com/forum/beginner/101599/