学了计算机之后,远没有其他专业同学学的那么高大上,随便懂点的人似乎都能和你聊两句计算机,不过,计算思维的影响真的是渗透进人的思维。
今早室友问这个月有30号吗?我直接模糊问题,将问题抽象成这个月是大月还是小月?(其实除了2月都有30号,我审题不清,在这里先暂且忽略。)
判断一个月是大月还是小月,用计算机怎么解决?先说说我是怎么解决的。
方法一:hash查找,详细的说明到处都是,我只说一下优点:快。
我的第一判断:78月是大月,第二判断才是这个月是哪月
这一点似乎没什么,但这是一种自顶向下的思维,简单来说,我在一瞬间提供了解决同类问题的方法,而不是针对这个问题,将问题扩展成一个抽象问题来解决。举例:先制定加法规则,再进行运算,而不是针对诸多运算,抽象出加法规则。这种和鸡生蛋还是蛋生鸡问题不同,算是一种潜移默化的思维改变?
不简单说一下,我的面向对象又变成了同学,简单说一下hash查找,它会将数据通过内容映射到地址,最简单的hash查找就是数组,有了下标,不用依次访问元素,直接找到位置,举例一:我排名147,想找到我,就到147号房间找我,不用依次敲开前146个房间的门看看里面的人是不是我。