Was ist die LinkedList-Entsprechung in iOS-Frameworks?

8

In Java kann man den generischen LinkedList verwenden, um die Effizienz zu verbessern, wenn Objekte oft an den Anfang der Liste hinzugefügt werden. Was ist das Äquivalent in den iOS-Frameworks?

    
Lopper 11.08.2011, 02:04
quelle

4 Antworten

16

Sie müssen wissen, dass in Foundation-Klassen wie NSArray usw. nicht das ist, was Sie als Array usw. in Ihrer Programmierklasse gelernt haben. Insbesondere hat es nicht die Leistungsmerkmale, die Sie normalerweise einem Array zuordnen würden.

In diesem Punkt gibt es viele schöne Blog-Beiträge, z.B. ein von Lächerlicher Fisch und ein anderer von Kakao mit Liebe

Also, wie alle anderen sagten, benutze einfach NSMutableArray .

    
Yuji 11.08.2011, 06:37
quelle
12

NSMutableArray ist am nächsten Dies. Trotz des Namens ist es näher an einer Liste als ein Array. Das "Anhängen und Entfernen von Elementen an beiden Enden dauert jedoch konstant" , gemäß dies .

Was ist mit einer Implementierung von Drittanbietern? Ссылка

    
Chris Dennett 11.08.2011 02:08
quelle
4

Es gibt kein direktes Äquivalent. Eine verknüpfte Liste selbst zu schreiben ist ziemlich einfach, aber ich bezweifle, dass Sie im Vergleich zu NSMutableArray eine Menge Leistung erreichen werden.

In der Open Source CHDataStructures gibt es ein paar verschiedene Implementierungen von Linked Lists.

    
omz 11.08.2011 02:09
quelle
1

NSMutableArray ist ein Vektor oder dynamisches Array, aber es ist nicht eine verknüpfte Liste.

    
jack 02.10.2012 23:41
quelle

Tags und Links