In computer science, streaming algorithms are algorithms for
processing data stream|data streams in which the input is presented as a sequence of
items and can be examined in only a few passes (typically just one). These
algorithms have limited memory available to them (much less than the input
size) and also limited processing time per item.
These constraints may mean that an algorithm produces an approximate answer based on a summary or sketch of the data stream in memory.