第一百七十章 版本问题(下)


小说:编程之战   作者:程序小猿   类别:未来世界   加入书签   【章节错误/点此举报】   【更新慢了/点此举报
推荐阅读: 永恒剑主 | 星光灿烂 | 巨星夫妻 | 弑天刃 | 九重神格 | 超警美利坚 | 步步惊唐 | 绝世天君 | 都市幻界 | 异度
笔趣阁 //www.boquge.com/book/105094/ 为您提供编程之战全文阅读!注册本站用户,获取免费书架,追书更方便!
  盛满了咖啡的茶杯,表面蒙着一层水雾。
  杯中液体微微荡漾,散发着浓郁的香味。
  杨成轻抿一口,顿时感觉神清气爽。
  深夜的瞌睡似乎也驱散了不少呢。
  他开始思索这个问题。
  顺序遍历判断,的确不是个好方法。
  如何最小化判断次数,是这个问题的关键。
  这个问题似乎跟二分搜索有关联?
  杨成突然想到这点。
  肯定是有所区别的,但思想上有共性。
  二分搜索不断缩小区间的做法在这个问题同样适用。
  不过得做一点小小的改变。
  杨成在脑海中飞快地整理思绪。
  假设left指针指向第1个版本。
  而right指针指向第n个(最后一个)版本。
  取left与right指针的中间版本mid版本。
  如果mid版本是坏的,有一个问题值得注意:
  它有可能是第一个坏的版本,我们无法确定。
  所以将right指针指向mid版本。
  相当于在右边缩小区间。
  而如果mid版本是好的,说明一个问题:
  第一个坏的版本肯定是在mid版本的右侧。
  所以将left指针指向mid+1的版本。
  相当于在左边缩小区间。
  在left和right做出改变后,继续分析mid版本。
  重复这个过程...
  直到left与right指针碰面。
  此时right指向的版本,就是第一个坏的版本。
  思绪理通顺了,编写代码是水到渠成的事儿。
  在项目经理的注视下,杨成写出了一段短小而精悍的代码。
  他长吁一口气,干了这杯咖啡。
  项目经理微微点头,拍拍他的肩膀。
  “小杨啊,继续好好干”。
  “我在你这个年纪,可是吃苦耐劳得很呢”。
  公司里,依然灯火通明,热火朝天。
  而窗外的黑夜却已是寂静一片。