以本人的经验来说,编程最重要的是有较强的逻辑推理能力和对编程语言的熟悉。数学基础不是很重要,有一般的基础就好,因为不懂可以去百度一下嘛。想象力真不是很重要,又不是搞艺术作品。
想象力和逻辑思维。其次是编程语言的熟练度,为你实现你的想象力做铺垫。仅次的就是你的数学基础,能为你提供很多的解决问题办法。简而言之就是你的脑子很重要,编程语言和数学只是一些很重要的工具。