Find the largest files in subdirectories

I find myself regularly with limited diskspace, and unsure which files to remove. Normally the largest files
I do not use anymore are the best candidate. When using Linux I use the command find:

find . -type f -print0 | xargs -0 du | sort -n | tail -10 | cut -f2 | xargs -I{} du -sh {}

This command searches for the largest files. In order to find the largest redirectories, replace the -type f with -type d.