|
![]() |
![]() |
find()
for example.
class Stack<V> { void push(V v) { ... } V pop() { ... } }
List | Stack | |||
---|---|---|---|---|
create | fast | fast | ||
delete | fast | fast | ||
add | slow | fast | ||
remove | slow | fast | ||
traversal | fast | na | ||
navigation | slow | na | ||
dynamic | no | no |
class Stack<V> // should have error checking. void push(V v) { s.addBefore(s.head(), v) } V pop() { return s.remove(s.head()) } private LinkedList<V> s;
List | Stack | Stack | ||||
---|---|---|---|---|---|---|
(Array) | (List) | |||||
create | fast | fast | fast | |||
delete | fast | fast | fast | |||
add | slow | fast | fast | |||
remove | slow | fast | fast | |||
traversal | fast | na | na | |||
navigation | slow | na | na | |||
dynamic | no | no | yes |
|
|
List | Stack | Stack | Stack | |||||
---|---|---|---|---|---|---|---|---|
(Array) | (List) | (DArray) | ||||||
create | fast | fast | fast | fast | ||||
delete | fast | fast | fast | fast | ||||
add | slow | fast | fast | fast* | ||||
remove | slow | fast | fast | fast* | ||||
traversal | fast | na | na | na | ||||
navigation | fast | na | na | na | ||||
dynamic | No | No | Yes | Yes |
* Most of the time, slow occasionally.
|
|
int f() int i, j double x // whatever
|
|
|
|
a() a() calls b() b() calls c() c() returns b() returns a() returns
void reverse(T a[], int n, int i) if i < n T c = a[i] reverse(a, n, i + 1) a[n - (i + 1)] = c
This page last modified on 6 October 2010. |