多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > 折半查找

折半查找

來源:程序員人生   發布時間:2015-06-19 08:29:25 閱讀次數:2804次
4.21號去參加阿里的實習生招聘,投遞的崗位是c/c++方向,下午2點,我悠閑的從學校北門前往悅豪酒店,走到酒店后掃描2維碼,去房間等待面試面試的內容觸及面非常廣。
從linux命令,STL ,操作系統,c/c++語法,算法,包羅萬象。下午迷迷糊糊面試完基本內容后面試官給了我1張紙和筆讓我寫兩個算法,1:快速排序,2:折半查找。
固然快速排序我寫的還是很快的,可是當我寫折半查找時悲劇產生了.

以下代碼是我在考場上所寫:

int binarysort(int a[],int low,int high,int x) { int mid=(low+high)/2; if(a[mid]==x) return mid; else if(a[mid]<x) binarysort(a,mid+1,high,x); else binarysort(a,low,mid⑴,x); }

當我寫完后面試官問我,你覺得你寫的對嗎?我這個時候表現的非常機靈,我反問他你覺得對嗎?后來問了問stl的內容,1面完后走出面試房間,我TM突然發現,沒有遞歸終止條件呀,如果查找不成功,low>=high時程序墮入死循環.

改進代碼:

int binarysort(int a[],int low,int high,int x) { if(low>=high) return ⑴; else { int mid=(low+high)/2; if(a[mid]==x) return mid; else if(a[mid]<x) binarysort(a,mid+1,high,x); else binarysort(a,low,mid⑴,x); } }

更常見的折半查找情勢:

int binarysort(int a[],int low,int high,int x)<a target=_blank href="http://www.52coder.net/archives/2472.html">點擊打開鏈接</a> { if(low>=high) return ⑴; while(low<=high) { int mid=(low+high)/2; if(a[mid]<x) low=mid+1; else if(a[mid]>x) high=mid⑴; else return mid; } return ⑴; }

問題總結:
1:寫遞歸函數時1定要有遞歸終止條件

2:面試時間可選擇時1定要選擇上午.

原文鏈接:http://www.52coder.net/archives/2472.html 版權所有.本站文章除注明出處外,皆為作者原創文章,可自由援用,但請注明來源.


生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 最近中文字幕完整在线看一 | 一二三四在线观看免费播放视频 | 女人18毛片a级18毛多水真多 | asianjapanese日本护士 | 欧美性专区| 一牛精品视频在线观看免费 | 国产主播福利 | 日本免费人做人一区在线观看 | 亚洲精品欧美综合 | 精品一区二区三区高清免费不卡 | 视频h在线 | 久草在线播放视频 | 日本视频中文字幕一区二区 | 在线亚洲国产精品区 | 日韩精品欧美亚洲高清有无 | 免费在线视频观看 | 日本三级成人中文字幕乱码 | 午夜欧美精品久久久久久久 | 男女免费在线视频 | 看片久久| 福利视频美女国产精品 | 国产精品久久久久一区二区三区 | 欧美另类videosbestse | 色中色欧美 | 亚洲视频黄色 | 日本天堂在线视频 | 中文字幕日本不卡一二三区 | 欧美日韩国产一区二区三区 | www.黄色一片 | 亚洲综合国产一区在线 | 日韩欧美亚洲国产 | 欧美图片另类小说综合 | 波多野结衣视频在线观看 | 全国精品影院 | 国产精品三级视频 | 亚洲免费观看网站 | 在线播放亚洲视频 | 欧美一块操 | 精品一区二区三区免费观看 | 亚洲国产日韩欧美一区二区三区 | 综合久久久久综合 |