算法题

1.计算两个非负整数p和q的最大公约数
在这里插入图片描述
分析:举例p=36和q=28。为什么说“若q是0,则最大公约数为p”呢其实这是递归的出口
答案如下:第一次传入gcd的两个参数p和q谁大谁小都可以,但是经过int r=p%q;之后r<q.所以之后递归调用该方法时,总是int p>int q,所以不断的辗转相除,q最后肯定会等于0,这个时候就返回p
在这里插入图片描述
在这里插入图片描述

2.颠倒数组元素的顺序:
解析:把前N/2的元素和后N/2的元素做一次交换即可在这里插入图片描述
3.二分查找(前提是数组已经从小到大排好序了)
在这里插入图片描述

posted @ 2018-11-07 13:42  抬头不见星空  阅读(34)  评论(0)    收藏  举报