On Fri, 27 Aug 2010, Guillermo Polito wrote:

In my machine:

o := OrderedCollection new: 1000.
1 to: 1000 do: [ :each | o add: each ].
[ 100000 timesRepeat: [ o addFirst: o removeLast ] ] timeToRun.   ==>  12842

o := LinkedList new: 1000.
1 to: 1000 do: [ :each | o add: each ].
[ 100000 timesRepeat: [ o addFirst: o removeLast ] ] timeToRun.   ==>  5603

LinkedList should be used this way if you want to use it as a Queue:

o := LinkedList new: 1000.
1 to: 1000 do: [ :each | o add: each ].
[ 100000 timesRepeat: [ o addLast: o removeFirst ] ] timeToRun. "===> 119"


Levente



On Fri, Aug 27, 2010 at 1:35 PM, Levente Uzonyi <[email protected]> wrote:

On Thu, 26 Aug 2010, Lukas Renggli wrote:

 I wonder why there is the need for a stack class at all?

OrderedCollection is the class designed to do Stacks and Queues
efficiently and portably, see #addFirst:, #addLast:, #first, #last,
#removeFirst, #removeLast.


If so, then there are some problems:

o := OrderedCollection new: 1000.
1 to: 1000 do: [ :each | o add: each ].
[ 100000 timesRepeat: [ o addFirst: o removeLast ] ] timeToRun. "===>
11660"


Levente



Lukas

2010/8/26 Bart Gauquie <[email protected]>:

Hi list,

is there a specific reason Stack is extending from LinkedList, instead of
using a LinkedList internally?
To me, it seems that the protocol that LinkedList,
SequenceableCollection,
... provides is not the protocol you expect from a Stack?

Any thoughts on this?

Kind regards,

Bart

--
imagination is more important than knowledge - Albert Einstein
Logic will get you from A to B. Imagination will take you everywhere -
Albert Einstein
Learn from yesterday, live for today, hope for tomorrow. The important
thing
is not to stop questioning. - Albert Einstein
The true sign of intelligence is not knowledge but imagination. - Albert
Einstein
However beautiful the strategy, you should occasionally look at the
results.
- Sir Winston Churchill
It's not enough that we do our best; sometimes we have to do what's
required. - Sir Winston Churchill

_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project




--
Lukas Renggli
www.lukas-renggli.ch

_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to