1.对二分算法的理解:

先对元素进行升序排列,利用它们间的次序关系,可在最坏情况下用O(logn)(2为底) 时间完成搜索任务。

基本思想:将n个元素分成大致相同的两半,取中间元素作为比较比较对象,若给定值与中间元素的关键字相等,则查找成功;若给定值小于中间元素的关键字,则在左半区继续查找;若中间元素的给定值大于中间元素的关键字,则在中间元素的右半区继续查找。不断重复上述查找过程,直到查找成功,或所查找的区域无数据元素,查找失败。

非递归,while循环(书上的内容)

public int Binary_Search(int[] a,int x){int left,right,middle;left = 0;right = a.length-1;while(left<=right){middle = (left+right)/2;if(x==a[middle]){return middle;}else if(x<a[middle]){right = middle-1;}else {left = middle+1;}}return -1;}}

  递归:

          public int Binary_Search(int[] a,int x,int left,int right){if(left<=right){int middle = (left+right)/2;if(x==a[middle]){return middle;}else if(x<a[middle]){return Binary_Search(a,x,left,middle-1);}else {return Binary_Search(a,x,middle+1,right);}}elsereturn -1;}
}

  while循环的时间复杂度更优

2.结对编程情况汇报

跟同学一起编程,能促进我们相互合作,学习。每个人的思考方向和代码风格都不一样,通过一起讨论,分析问题,发现不足,解决问题,更有利于我们培养团队合作能力。而且也让我明白了代码规范的重要性,代码没有条理,别人很难看懂。

转载于:https://www.cnblogs.com/lasia/p/9826922.html

对二分法的理解和结对编程情况相关推荐

  1. 如何在新时代下的结对编程中将代码玩出花来

    好久没写文章了,标题起的有点膨胀. 你猜我想说什么 我想写一个结对编程小记.最近在和 S (帅气的花名) 利用业余时间,进行了一次结对编程.现在我准备把结对编程的一些思考分享给大家,下面开始吧. PS ...

  2. 对二分法思想的体会 及 结队编程情况汇报

    算法课第二章作业 1. 对二分法思想的体会: 二分法是分治法的一种,当遇到大问题难以解决的时候,可以使用二分法将问题细化,提高效率,减小问题规模.例如二分搜索,有效率高的优点,但是这个优点的实现前提是 ...

  3. 结对编程的合作情况,以及结对编程的优缺点

    我们合作的过程照 结对编程的优缺点: (1)首先应该是结对编程的高效率了,结对编程的时候,两个人可以分开做不同的unit,也可以同时做相同的unit.在项目的一些简单的unit,一个人能够很简单的un ...

  4. WordCount by C# 结对编程

    合作者:201631062210,201631062110 Gitee项目地址:https://gitee.com/zhouyue98/learngit 本次作业的链接地址:https://edu.c ...

  5. 软件工程第一次结对编程

    10/11-10/16日短短五天,我和队友通过结对编程的方式完成了一个用来做"黄金点游戏"的小程序,项目地址: https://github.com/ycWang9725/gold ...

  6. 结对编程作业---电梯调度程序

    这次的作业和以往不同,按照老师的要求,我们要进行结对编程的练习.所谓结对编程相信各位都不会陌生,这里不在赘述. 首先介绍下我的小伙伴,很幸运的是我的队友也是我的室友---樊西江,这为我们合作提供了很大 ...

  7. 敏捷开发“松结对编程”系列之七:问题集之一

    本文是"松结对编程"系列的第七篇.(之一,之二,之三,之四,之五,之六,之七,之八) 刚刚参加完MPD 2011深圳站,在演讲中间及后来媒体采访,被问到了一些问题,也给出了答案,这 ...

  8. 敏捷开发绩效管理之三:个体动力之源——同行压力(松结对编程,师徒制度,跨职能团队,绩效考核)...

    这是敏捷开发绩效管理的第三篇.(之一,之二,之三,之四,之五,之六,之七) 如果有10个程序员,笔者相信至少有9个是勤奋的.但是如果有一个10人的程序员团队,其中1个人不是勤奋的,而且仍然拿到与其他人 ...

  9. 敏捷开发“松结对编程”实践之六:大型团队篇|后记(大型研发团队,学习型团队,139团队,师徒制度,人员招聘,职业生涯规划)...

    本文是"松结对编程"系列的第六篇.(之一,之二,之三,之四,之五,之六,之七,之八) 松结对编程是小型团队的实践,大约运行在1个师傅+1-3个徒弟的尺度上,当面临更大尺度的时候,就 ...

  10. 敏捷开发“松结对编程”实践之五:代码检查篇(大型研发团队,学习型团队,139团队,师徒制度,代码审查)...

    本文是"松结对编程"系列的第五篇.(之一,之二,之三,之四,之五,之六,之七,之八) 松结对和紧结对不一样,两个人不是总坐在一起随时发现问题解决问题,而是很短时间地坐在一起.其中在 ...

最新文章

  1. 【设计模式】享元模式
  2. Solr索引数据同步ReplicationHandler
  3. CPD和DESCR文件查看
  4. html 屏蔽蓝色电话,html – 在Chrome扩展程序中停用文字字段蓝色突出显示?
  5. 工厂模式——JavaScript
  6. MySQl Got a packet bigger than ' max_allowed_packet' bytes
  7. hadoop 单机伪分布式安装步骤
  8. 【转】Serverless架构
  9. oracle 索引 序列,【Oracle】表、视图、序列、索引
  10. 【quickhybrid】H5和原生的职责划分
  11. github API 实例 python源码 爬取用户信息
  12. 【新书速递】计算机系统解密:从理解计算机到编写高效代码
  13. 计算机CPU的常见故障的排除,计算机CPU常见故障与排除.pdf
  14. android+浮层布局,如何使用Android实现单页面浮层可拖动view
  15. 天牛须matlab,BAS天牛须搜索优化算法.pdf
  16. HR唠家常式的套路题
  17. MT【109】线面角最大时为二面角平面角
  18. 【干货】MySQL底层架构设计,你了解多少?
  19. seo推广,seo推广是什么意思呢
  20. 基于Android的便签设计(一)

热门文章

  1. 按国家归类的海淘网站大全
  2. C语言求解黎曼 函数非平凡零点,51、黎曼函数的“非平凡零点 (1/2)z”是什么玩意?...
  3. 重装系统不识别固态硬盘进入PE系统时候卡死
  4. 访问文件服务器电脑卡死,客户机访问服务器的共享文件会卡死
  5. 钢琴作品常用体裁名称及曲式
  6. 2.Java语言基础——流程控制语句与方法
  7. sam卡和sim卡区别_SAM卡
  8. webgl中顶点着色器的varying变量,使用方法。
  9. Class -- 07 -- Modifier类常用方法解析
  10. mysql migration toolkit 使用_MySQL Migration Toolkit的使用