Skip to content

四火的唠叨

一个纯正程序员的啰嗦

Menu
  • 所有文章
  • About Me
  • 关于四火
  • 旅行映像
  • 独立游戏
  • 资源链接
Menu

多年前的一封邮件

Posted on 09/07/201206/23/2019 by 四火

Email 昨晚在整理邮件,翻阅到这样一封邮件,它来自我的老师郭军,曾经教我 COP(面向组件编程)课程的老师。这个邮件的始末是这样的,郭老师在课上扯到了一道题,在现在看来是再简单不过的题目了,对于给定的 n,要求只允许用一层循环,打印这样的星号(下例中 n=3):

  *
 ***
*****
 ***
  *

因为只能用一层循环,所以当时是这样实现的:

	int n=3;
	int row,col,mid;
	for(int i=1;i<=(2*n-1)*(2*n);i++){
		row = i/(2*n)+1;
		col = i-(row-1)*(2*n);
		row>n?mid=row-n:mid=n-row; //相对于中间行恒正的行偏移量
		if(!(i%(2*n)))
			printf("\n");
		else if(col>mid && col<n*2-mid)
			printf("*");
		else
			printf(" ");
	}

现在看来似乎题目是没什么大不了,但对当时的我来说,课上在脑子里记下了题目,觉得好像可以解决,课后完成以后就发给郭军老师。没想到他给我回复了邮件,邮件说:

发件人: 郭军
发送时间: 9 月 8 日 09:14
收件人: Ray Chase
主题: 回复: 星号题目 一层循环 我的方法

很好!
对于平庸的开发者,这是个难题。对于优秀的开发者,这太过简单。
希望你能够永远保持一颗谦虚、向上、进取的心,并且能够和别人愉快地合作,做出一番事业来(不一定是大事业,但一定是有意义)。
郭军

邮件写得很简单,但是对当时的我来说,还是莫大的鼓励。工作以后发现,对于梦想的坚持,无疑是艰苦和孤独的。一封小小的邮件,确实可以改变一个人。

老师的意义在于传道授业解惑,但是老师难做地方在于,这个职业太容易对学生施加影响,无论是什么性质的影响。正所谓有心栽花花不开,无心插柳柳成荫,那些课堂上的故事未必记得太多,可是某些细微的举动,却能对学生有长远的影响。因此,那些特别优秀的老师,没有必要过于纠结他在课上的教学,不如看看他在课下、在业余时间是怎样影响学生的。

反之,许多牛人、高手、顾问却只热衷于自己的小圈子里,对同样的知名人士热忱相待,积极互动,但是对于一些资历尚浅、身份普通的朋友却毫无兴趣,冷眼相待。要不就对于他们的来信和言论摆出一副老资格的样子,言行中充满强势和不屑。这兴许是这个行业的通病?

而另一方面,很多入涉软件行业不深的程序员,却自惭形秽,自嘲码农,觉得自己做着苦逼的简单劳动,觉得只是要混个青春饭吃。可是中国的互联网环境,终究要靠他们来拯救,而不是现在那些卖弄成就和故事的“ 成功人士”。我想,都是对软件的兴趣培养了那么多人,倘若给这些不够自信的程序员一个更宽松和更多支持的环境,他们会做出更有价值的东西来。而老师,有着不可替代的意义。希望在适当的时候,我也可以尽一份力。

教师节马上要到了,祝愿天下的老师节日快乐。

文章未经特殊标明皆为本人原创,未经许可不得用于任何商业用途,转载请保持完整性并注明来源链接 《四火的唠叨》

×Scan to share with WeChat

你可能也喜欢看:

  1. C++学习杂记
  2. 06 世界杯随想
  3. 三百篇文字纪念
  4. 给我一把榔头,满世界都是钉子
  5. 代码的变与不变

3 thoughts on “多年前的一封邮件”

  1. west says:
    09/10/2012 at 9:55 PM

    很好的老师!我特意过来顶

    Reply
  2. 值得看 says:
    09/10/2012 at 4:24 PM

    文章确实不错,支持下先,欢迎您也来我的小站 www.zdkan.com 壬辰年 (龙) 七月廿五 2012-9-10

    Reply
  3. Anonymous says:
    09/08/2012 at 10:42 PM

     
    自己写了个,完了才发现我其实还是用了二重循环。。。
     
    val n = 3
    var i = 0
     
    while (i < 2*n-1) {
      var step = i
      if(i>= n) 
        step = 2 * n – 2 – i
     
      print( " " * (n-1-step))
      print( "*" * (2 * step + 1))
      print( " " * (n-1-step))
      println()
      i += 1
    }
     

    Reply

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

订阅·联系

四火,啰嗦的程序员一枚,现居西雅图

Amazon Google Groovy Hadoop Haskell Java JavaScript LeetCode Oracle Spark 互联网 亚马逊 前端 华为 历史 同步 团队 图解笔记 基础设施 工作 工作流 工具 工程师 应用系统 异步 微博 思考 技术 数据库 曼联 测试 生活 眼界 程序员 管理 系统设计 缓存 编程范型 美股 英语 西雅图 设计 问题 面向对象 面试

分类

  • Algorithm and Data Structure (30)
  • Concurrency and Asynchronization (6)
  • System Architecture and Design (43)
  • Distributed System (18)
  • Tools Frameworks and Libs (13)
  • Storage and Data Access (8)
  • Front-end Development (33)
  • Programming Languages and Paradigms (55)
  • Testing and Quality Assurance (4)
  • Network and Communication (6)
  • Authentication and Authorization (6)
  • Automation and Operation Excellence (13)
  • Machine Learning and Artificial Intelligence (6)
  • Product Design (7)
  • Hiring and Interviews (14)
  • Project and Team Management (14)
  • Engineering Culture (17)
  • Critical Thinking (25)
  • Career Growth (57)
  • Life Experience and Thoughts (45)

推荐文章

  • 聊一聊分布式系统中的时间
  • 谈谈分布式锁
  • 常见分布式系统设计图解(汇总)
  • 系统设计中的快速估算技巧
  • 从链表存在环的问题说起
  • 技术面试中,什么样的问题才是好问题?
  • 从物理时钟到逻辑时钟
  • 近期面试观摩的一些思考
  • RSA 背后的算法
  • 谈谈 Ops(汇总 + 最终篇):工具和实践
  • 不要让业务牵着鼻子走
  • 倔强的程序员
  • 谈谈微信的信息流
  • 评审的艺术——谈谈现实中的代码评审
  • Blog 安全问题小记
  • 求第 K 个数的问题
  • 一些前端框架的比较(下)——Ember.js 和 React
  • 一些前端框架的比较(上)——GWT、AngularJS 和 Backbone.js
  • 工作流系统的设计
  • Spark 的性能调优
  • “残酷” 的事实
  • 七年工作,几个故事
  • 从 Java 和 JavaScript 来学习 Haskell 和 Groovy(汇总)
  • 一道随机数题目的求解
  • 层次
  • Dynamo 的实现技术和去中心化
  • 也谈谈全栈工程师
  • 多重继承的演变
  • 编程范型:工具的选择
  • GWT 初体验
  • java.util.concurrent 并发包诸类概览
  • 从 DCL 的对象安全发布谈起
  • 不同团队的困惑
  • 不适合 Hadoop 解决的问题
  • 留心那些潜在的系统设计问题
  • 再谈大楼扔鸡蛋的问题
  • 几种华丽无比的开发方式
  • 我眼中的工程师文化
  • 观点的碰撞
  • 谈谈盗版软件问题
  • 对几个软件开发传统观点的质疑和反驳
  • MVC 框架的映射和解耦
  • 编程的未来
  • DAO 的演进
  • 致那些自嘲码农的苦逼程序员
  • Java 多线程发展简史
  • 珍爱生命,远离微博
  • 网站性能优化的三重境界
  • OSCache 框架源码解析
  • “ 你不适合做程序员”
  • 画圆画方的故事

近期评论

  • Ticket: TRANSACTION 1.922915 BTC. Go to withdrawal >> https://yandex.com/poll/enter/BXidu5Ewa8hnAFoFznqSi9?hs=20bd550f65c6e03103876b28cabc4da6& on 倔强的程序员
  • panshenlian.com on 初涉 ML Workflow 系统:Kubeflow Pipelines、Flyte 和 Metaflow
  • panzhixiang on 关于近期求职的近况和思考
  • Anonymous on 闲聊投资:亲自体验和护城河
  • 四火 on 关于近期求职的近况和思考
  • YC on 关于近期求职的近况和思考
  • mafulong on 常见分布式基础设施系统设计图解(四):分布式工作流系统
  • 四火 on 常见分布式基础设施系统设计图解(八):分布式键值存储系统
  • Anonymous on 我裸辞了
  • https://umlcn.com on 资源链接
© 2025 四火的唠叨 | Powered by Minimalist Blog WordPress Theme