1) if you run Oracle 8, then the behaviour is normal, the tablespace is filled, and then Oracle manages to free temp segments when space is needed ... but sometimes it tells you that TEMP tablespace is full, well I never understood this kind of bug :/
well anyway, if you do not have problems saying 'unable to extent ... segment in TEMP tablespace', then it works fine.

2) if you still want to free space :

alter tablespace TEMP default storage (pctincrease 1);
alter tablespace TEMP default storage (pctincrease 0);
alter tablespace TEMP coalesce;

this will free all unused segments in your TEMP tablespace