Ναι τα imports είναι οι βιβλιοθήκες. Με την αυστηρή έννοια, δεν είναι εξωτερικές βιβλιοθήκες καθώς περιέχονται στην standard library της Python, αλλά και εξωτερικές να ήταν δε θα είχε κάποια διαφορά.
Το module timeit είναι για να συγκρίνεις την ταχύτητα εκτέλεσης ενός snippet python με ένα άλλο snippet python για να δεις ποιος αλγόριθμος είναι ταχύτερος. Δε νομίζω ότι μπορείς να το χρησιμοποιήσεις για να κάνεις συγκρίσεις με άλλες γλώσσες. Το έκανα για να δούμε ποια μέθοδος θα είναι η ταχύτερη καθώς και τις διαφορές μεταξύ python2/python3/pypy. Επίσης μου επέτρεψε να διαλέξω τον ταχύτερο αλγόριθμο για τη σύγκριση με τη C (αν δεχτούμε ότι μια τέτοια σύγκριση έχει νόημα).
Δεν είμαι ειδικός, οπότε μπορεί να κάνω και λάθος, αλλά νομίζω ότι ο λόγος που έχει νόημα να αφαιρέσεις imports, χρόνο εκκίνησης κτλ είναι γιατί είναι ενα σταθερό overhead. Δε σχετίζονται με τον αλγόριθμο. Είτε 5000 είναι το μήκος της λίστας που γίνεται sort είτε 5000000 o χρόνος αυτός είναι ο ίδιος και όπως φάνηκε άλλωστε, τουλάχιστον για το μέγεθος του προβλήματος, ο χρόνος αυτός είναι ένα σημαντικό τμήμα του συνολικού χρόνου. Ο αντίστοιχος χρόνος στη C φαντάζομαι ότι είναι αμελητέος. Είναι δύσκολο σε τόσο διαφορετικές γλώσσες να μπορέσεις να κάνεις συγκρίσεις.
Η C προφανώς είναι πιο γρήγορη από την Python και αυτό δεν είναι κάτι που χρειάζεται αποδείξεις. Εφόσον δεν το παρατηρούμε στην πράξη, το πιο πιθανό είναι ότι χρησιμοποιούμε πιο αργό αλγόριθμο στη C από αυτόν που χρησιμοποιείται στην Python. Δεν πρέπει να ξεχνάμε ότι πολλά από τα τμήματα της standard library της python είναι υλοποιημένα σε C οπότε δεν είναι και τόσο αργά. Επίσης άλλα compilation flags στη C πιθανότατα θα βελτιώνουν την ταχύτητα εκτέλεσης.





