Splicing on a list only works in constant time if you happen
to have a pointer near the part you want to delete. But in
general, splicing on an array and on a linked list will take
linear time - it's linear on the array because of all the
movement of the elements that's needed, and it's linear on
a linked list because you first need to get to the part that
needs to be deleted. The deletion itself takes time linear
to size of the part that needs to be deleted - unless you also
have to happen a pointer at the end of the part that needs to
be deleted.
Abigail