zoukankan      html  css  js  c++  java
  • 为刚開始学习的人答效率的问题

      本文来自读者对我博文的评论。

    遇到主动思考者,提出的主动思考过的问题,老贺是相当的兴奋。
      完整的对话见《C语言及程序设计实践參考——n=a!+b!+c!》中二楼评论。
      
    【问题】
      老师,我尝试着%¥#&……%……,但程序变得很多其它了。这样还会提高效率吗?
    【答复】
      非常高兴你能问出这样的问题。这样的主动思考,在我的实体课学生中真也不多。这牵涉到我们对于效率的多维认识。
      多数情况下。效率指计算机的效率。要分时间效率(用时尽可能少)和空间效率(执行中少占用内存空间)。而注重时间效率的居多。

    于是,源码的行数多少,并非决定时间效率高的关键。仅仅要终于目标代码,让计算机执行的操作少。时间角度自然就快。而还有一维度的效率,我们也要认识到。那就是人的效率。计算机系统是由计算机和人综合起来的,实际上,人的效率更值钱。这在如今人力成本添加的情形下。对一些公司非常关键的事。对于不算太复杂的问题,或者计算机效率低,但也足以满足需求的情况下,作为开发者的“人”,不必为计算机的效率而花太多功夫。一个系统中最关键的环节,影响到系统性能的“瓶颈”部分。才值得去耗费大量的人力,以及绝顶聪明的脑袋,去追求计算机的效率。这也就是非常多0基础的程度员体会不到学算法的必要性的原因(虽然好的0基础程序猿。算法素质无时不刻在起作用)。你的解决方式,显然计算机的效率高了。人的效率低了。

    更要命的是。算法弄复杂了,出错的可能性更大了。不论什么的project,遵循“简单即是美”的法则。


      回答这样的问题。高兴。就多说几句。


      当然,作为学习者,尤其是刚開始学习的人,你的这样的“人力低效率”。恰从学习角度是最高效率的。对训练思维的价值是相当大的。

    将这样的思考和质疑继续下去!

  • 相关阅读:
    牛客练习赛16
    AtCoder Regular Contest 096
    基础实验4-2.8 部落 (25分)--并查集
    进阶实验4-3.3 完全二叉搜索树 (30分)
    进阶实验4-3.2 Windows消息队列 (25分)--建堆
    基础实验4-2.5 关于堆的判断 (25分)---建小顶堆
    基础实验4-2.4 搜索树判断 (25分)--二叉搜索树
    基础实验4-2.1 树的同构 (25分)--二叉树
    案例4-1.7 文件传输 (25分)--并查集
    进阶实验3-3.1 求前缀表达式的值 (25分)--堆栈
  • 原文地址:https://www.cnblogs.com/liguangsunls/p/7115306.html
Copyright © 2011-2022 走看看