主要是因为你学的比较基础,没有设计深入的学习和应用.
更深入的学习的话(尤其搞深入算法研究而不是做题),你会发现数学学不好的人很吃亏.
比如,科研方面解决科学问题,必然是将实际问题建立数学模型,而后分析应该用哪几种数据结构,涉及哪些算法.一旦涉及建立模型就全是用数学的知识.
就算不搞理论研究,实际应用中的算法分析,尤其涉及海量数据的时候,甚至要结合特定机器的操作系统、网络环境、存储,如果要得出可靠的结论就要应用复杂的数值分析知识才行,远远不是一句"O(n)层次的时间复杂度"就可以了.
而且,入门时候所能学到的经典的初等算法比如KMP、Dijkstra、Kruskal都不是现在看到的这么简单,最初提出的时候要有严格而且精确的数学证明才行,读起来非常晦涩.还比如NP完全问题证明,不就是很明显的数学范十足么,基本可以当数学论文看.
说实话,一旦你考虑的多了,想总结一定的规律了,不是解了一道题就算了的话,就能发现其实最靠谱的还是数学,尤其是基本的数学原理.