Welche Datenstruktur wird von Tabellenkalkulationsprogrammen wie ms-excel verwendet?Datenstruktur für die Implementierung von Tabellenkalkulationen
Antwort
Vielleicht, wahrscheinlich, eine spärliche Matrix:
Möglicherweise ein mehrdimensionales Array.
Das mag für frühe Tabellenkalkulationen mit naiven Implementierungen der Fall gewesen sein, die Zeilen und Spalten auf eine Menge begrenzten, die in den Speicher passen würden, aber es ist zweifelhaft, ob eine erfolgreiche Implementierung solche Einschränkungen erleiden würde, die ein 2D-Array auferlegen würde. Die Kunst besteht darin, das Gefühl eines 2D-Arrays zu geben, ohne tatsächlich ein 2D-Array zu sein. – DavidO
Während es nicht genau Excel ist Open Open Office-Tabellenkalkulationsprogramm Open Source. Es ist eine ziemlich große Code-Basis, aber es dennoch einen Blick geben könnte Ihnen ein besseres Verständnis dafür, wie eine solche Anwendung implementiert:
ich es viele verwenden erwarten.
Zum Beispiel ein AST, um Formeln neu zu berechnen (siehe this Frage).
Ich habe diese Frage in einem Interview heute.
Die Antwort, nach der sie suchten (weil ich den Interviewer am Ende fragte) war, eine Klassenstruktur zu implementieren, die mehrere Objekte verwendete; Formeln, Referenzen und Zahlen.
Nicht viel mehr Details zu bieten, aber es genügt zu sagen, dass Programme wie Google Docs sind viel interessanter (Code) als sie scheinen.
Interessieren Sie sich für die Möglichkeit, den Inhalt der Zellen zu speichern oder die vielen Zellen oder beides zu speichern und zu verfolgen? – dmckee