a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > C > 正文

C語言實現兩個遞減數列中尋找某一個數

2020-01-26 15:18:23
字體:
來源:轉載
供稿:網友

本文實例講述了C語言實現兩個遞減數列中尋找某一個數的方法,分享給大家供大家參考之用。具體方法如下:

通常來說這道題算二分查找法中非常有難度的一題了。

題目如下:

一個數組是由一個遞減數列左移若干位形成,比如{4, 3, 2, 1, 6, 5}是由{6, 5, 4, 3, 2, 1}左移兩位,在這種數組中查找某一個數。

實現代碼如下:

int array[] = {4, 3, 2, 1, 6, 5};const int size = sizeof array / sizeof *array;int findMinNumber(int (&array)[size], int start, int last, int dest){ int mid = (last - start) / 2 + start; int result; if(start > last) { return -1; } if(array[mid] == dest) { result = mid; return result; }  if(array[mid] <= array[start]) { if(dest > array[mid] && dest <= array[start]) { last = mid - 1; result = findMinNumber(array, start, last, dest); } else { start = mid + 1; result = findMinNumber(array, start, last, dest); } } else if(array[mid] > array[start]) { if(dest < array[mid] && dest >= array[last]) { start = mid + 1; result = findMinNumber(array, start, last, dest); } else { last = mid - 1; result = findMinNumber(array, start, last, dest); } } return result;}

程序運行結果如下圖所示:

希望本文所述對大家C程序算法設計的學習有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 一区在线播放 | 国产www在线| 国产视频久久久 | 亚洲精品成人在线 | 中文字幕日韩一区二区三区 | 国产精品人人做人人爽 | 久草久草久草 | 日韩欧美国产一区二区 | 国外成人在线视频网站 | 国产精品久久久久久久久免费丝袜 | 日韩在线视频一区 | 黄色a视频 | 精品欧美一区二区在线观看视频 | 午夜精选视频 | 欧美啊v | 欧美性18 | 成人激情视频在线免费观看 | 天堂久久一区 | 高清av在线| 亚洲欧美日韩国产综合 | 亚洲男人av | 欧美一区二区三区在线视频 | 国产黄在线播放 | 久久精品日产第一区二区 | 国产成人精品a视频 | 久久久久国产一区二区三区四区 | 日韩免费在线观看视频 | 欧美精品一区在线发布 | 特级毛片 | 人人草人人| 青青国产在线 | 亚洲成人中文字幕 | 天天躁日日躁狠狠很躁 | 欧美日韩精品久久久 | 久久视频精品 | 精品无人乱码一区二区三区 | 国产日韩欧美在线 | 污网址在线观看 | 欧美视频在线观看不卡 | 欧美性生活视频 | 久久精品播放 |