Hi...

I got the same problem, I can release some space in TEMP after running this query :
SELECT b.tablespace, b.segfile#, b.segblk#, b.blocks, a.sid, a.serial#,a.username, a.osuser, a.status FROM v$session a,v$sort_usage b WHERE a.saddr = b.session_addr ORDER BY b.tablespace, b.segfile#, b.segblk#, b.blocks

Then kill the session which is holding the segments, if you have TOP Session utility from OEM it will be easier...

If you restart the DB will solve the problem...

TIA
Jeram
Oracle DBA