要想降低时间复杂度,那就必须浪费空间,要想降低空间复杂度,必须的消耗时间,两者是不可兼得的!在学校我也很认同这个观点,但是一直没有较深的体会,就连在我面试工作的时候,面试官问我这方面问题,我也是如是回答。但是在今天确实有了一些深的体会,在这里和大家谈谈,并且看看我最终为什么而进行了让步!
一直没有接触过很多条数据,在学校接触过最多的数据也就是不到2000条数据,然而当我做企业级的数据库demo时候,就出现了4万多条数据。还是一味的写自己的sql语句,将所有的限制条件以where的方式进行了书写,然而由于数过多,条件限制过多,这条语句竟然运行了8分钟,想到自己以后要经常用到这条语句,不可能每次都去查询,浪费这么长时间吧!还有房查询的时候,电脑就像一个轰炸机似的!!一直作响!!下来我就想到了在老师说过的经典话语,时间,空间只能选择一个!!那么我想是不是可以将自己查询到的东西,创建一张新的表格来,接下来我就用创建表格的方法进行了创建,CREATE TABLE TABLENAME AS +你的select语句!!果然这种方法可行!!然后自己查询数据库这张新表,只花费了不到2s,甚是欢喜!!所以对于我来说,更加理解了时间与空间的关系!!