encontrando la derivada de un polinomio

Me pregunto simbólicamente cómo analizaría un polinomio en una función y devolvería el derivado. ¿Qué estructura de datos usaría o método para analizar el polinomio? Preferiblemente sin usar bibliotecas, ya que esta pregunta podría aparecer en una entrevista técnica.

polynomial-> of nth degree

def derivative(polynomial):
    return derivative

Example:

f(x)  = 2x^2+3x+1
f'(x) = 4x+3

No quiero una solución, esto no es tarea, sino un indicio de por dónde empezar.

Respuestas a la pregunta(8)

Su respuesta a la pregunta