Quantum Algorithms For Linear And Nonlinear Differential Equations