最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++ 先對(duì)數(shù)組排序,在進(jìn)行折半查找

 更新時(shí)間:2013年10月17日 09:49:04   作者:  
以下小編就為大家介紹兩種實(shí)現(xiàn)方法。第一種方法是,選擇排序法+循環(huán)折半查找法。第二種方法是,冒泡排序法+遞歸折半查找法。需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助

第一步:輸入15個(gè)整數(shù)

第二步:對(duì)這15個(gè)數(shù)進(jìn)行排序

第三部:輸入一個(gè)數(shù),在后在排好序的數(shù)中進(jìn)行折半查找,判斷該數(shù)的位置

實(shí)現(xiàn)代碼如下:

方法一:

選擇排序法+循環(huán)折半查找法

復(fù)制代碼 代碼如下:

#include<iostream>
using namespace std;
int main(){
 int a[15];
 int n,i;
 void array_sort(int a[], int n);
 int zeban(int a[], int start ,int end,int n);
 cout<<"Please input 15 numbers:"<<endl;
 for(i=0;i<15;i++){
  cin>>a[i];
 }
 cout<<"Sorted order:"<<endl;
 //==============選擇排序========
 array_sort(a,15);
 //=======輸出排序完成的數(shù)組====
    for(i=0;i<15;i++){
  cout<<a[i]<<" ";
  }
 cout<<endl;
 cout<<"please input a number:";
 cin>>n;
 //================折半查找==========
 cout<<endl;
 cout<<"number "<<n<<" locate in "<<zeban(a,0,14,n)<<endl;
 return 0;
}
void array_sort(int a[],int n){
 int i,j,k,tool;
     for(i=0;i<n;i++){
  k=i;
  for(j=(i+1);j<n;j++){
  if(a[j]<a[k]){
     k=j;
        }
  }
  tool=a[i];
  a[i]=a[k];
  a[k]=tool;
  }
}
int zeban(int a[],int start,int end,int n){
 int tag=-1;
 for(start=0,end=14;start<=end;){
  if(n==a[(start+end)/2]){
   tag=(start+end)/2+1;
   return tag;
  }else if(n<a[(start+end)/2]){
   end=(start+end)/2;
  }else if(n>a[(start+end)/2]){
   start=(start+end)/2;
  }
 }
}

第二種方法:

冒泡排序法+遞歸折半查找法

復(fù)制代碼 代碼如下:

#include<iostream>
using namespace std;
int main(){
 int a[15];
 int n,i;
 void array_sort(int a[], int n);
    int IterBiSearch(int data[], const int x, int beg, int last);
 cout<<"Please input 15 numbers:"<<endl;
 for(i=0;i<15;i++){
  cin>>a[i];
 }
 cout<<"Sorted order:"<<endl;
 //==============選擇排序========
 array_sort(a,15);
 //=======輸出排序完成的數(shù)組====
    for(i=0;i<15;i++){
  cout<<a[i]<<" ";
  }
 cout<<endl;
 cout<<"please input a number:";
 cin>>n;
 //================折半查找==========
 cout<<endl;
 cout<<"number "<<n<<" locate in "<<IterBiSearch(a,n, 0, 14)<<endl;
 return 0;
}
void array_sort(int a[],int n){
 int i,j,tool;
     for(i=0;i<n;i++){
     for(j=0;j<(n-i-1);j++){
        if(a[j]>a[j+1]){
           tool=a[j];
           a[j]=a[j+1];
           a[j+1]=tool;
        }
     }
    }
}
int IterBiSearch(int data[], const int x, int beg, int last) 

    int mid = -1; 
    mid = (beg + last) / 2; 
    if (x == data[mid]) 
    { 
        return (mid+1); 
    } 
    else if (x < data[mid]) 
    { 
        return IterBiSearch(data, x, beg, mid - 1); 
    } 
    else if (x > data[mid]) 
    { 
        return IterBiSearch(data, x, mid + 1, last); 
    } 
    return -1; 

相關(guān)文章

  • 劍指offer之C++語(yǔ)言實(shí)現(xiàn)鏈表(兩種刪除節(jié)點(diǎn)方式)

    劍指offer之C++語(yǔ)言實(shí)現(xiàn)鏈表(兩種刪除節(jié)點(diǎn)方式)

    今天小編就為大家分享一篇關(guān)于劍指offer之C++語(yǔ)言實(shí)現(xiàn)鏈表(兩種刪除節(jié)點(diǎn)方式),小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-02-02
  • C++核心編程之內(nèi)存分區(qū)模型詳解

    C++核心編程之內(nèi)存分區(qū)模型詳解

    這篇文章主要為大家介紹了C++核心編程中內(nèi)存分區(qū)模型,C++程序在執(zhí)行時(shí),將內(nèi)存大方向分為四個(gè)區(qū)域,代碼區(qū),全局區(qū),棧區(qū),堆區(qū),文章通過(guò)代碼示例介紹的非常詳細(xì),感興趣的同學(xué)可以參考閱讀下
    2023-07-07
  • VS中PCL庫(kù)附加依賴項(xiàng)配置過(guò)程解析

    VS中PCL庫(kù)附加依賴項(xiàng)配置過(guò)程解析

    這篇文章主要介紹了VS中PCL庫(kù)附加依賴項(xiàng)配置,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • 使用C語(yǔ)言操作文件的基本函數(shù)整理

    使用C語(yǔ)言操作文件的基本函數(shù)整理

    這篇文章主要介紹了使用C語(yǔ)言操作文件的基本函數(shù)整理,包括創(chuàng)建和打開(kāi)以及關(guān)閉文件的操作方法,需要的朋友可以參考下
    2015-08-08
  • C++精要分析decltype的作用及用法

    C++精要分析decltype的作用及用法

    decltype是C++11新增的一個(gè)關(guān)鍵字,和auto的功能一樣,用來(lái)在編譯時(shí)期進(jìn)行自動(dòng)類型推導(dǎo)。引入decltype是因?yàn)閍uto并不適用于所有的自動(dòng)類型推導(dǎo)場(chǎng)景,在某些特殊情況下auto用起來(lái)很不方便,甚至壓根無(wú)法使用
    2022-05-05
  • C++?類模板與成員函數(shù)模板示例解析

    C++?類模板與成員函數(shù)模板示例解析

    這篇文章主要為大家介紹了C++?類模板與成員函數(shù)模板示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • c++類成員函數(shù)如何做函數(shù)參數(shù)

    c++類成員函數(shù)如何做函數(shù)參數(shù)

    這篇文章主要介紹了c++類成員函數(shù)如何做函數(shù)參數(shù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • C++堆棧類模板實(shí)現(xiàn)代碼

    C++堆棧類模板實(shí)現(xiàn)代碼

    這篇文章主要為大家詳細(xì)介紹了C++堆棧類模板的實(shí)現(xiàn)代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • c++ #include是怎么樣工作的?

    c++ #include是怎么樣工作的?

    大多數(shù)園友可能對(duì)“#include”比較熟悉,因?yàn)槲覀儗?xiě)C/C++程序的時(shí)候都會(huì)寫(xiě)的字符串之一,但是它是具體怎么工作的?或者它的原理是什么呢?
    2013-01-01
  • C++中友元類和嵌套類使用詳解

    C++中友元類和嵌套類使用詳解

    友元是一種允許非類成員函數(shù)訪問(wèn)類的非公有成員的一種機(jī)制??梢园岩粋€(gè)函數(shù)指定為類的友元,也可以把整個(gè)類指定為另一個(gè)類的友元,所謂嵌套類,就是在類中聲明的類。如下代碼中,類Inner就是一個(gè)嵌套類,類Outer是外圍類
    2022-08-08

最新評(píng)論

尼勒克县| 天峻县| 刚察县| 湖南省| 通山县| 韶关市| 连江县| 黄大仙区| 塔河县| 岐山县| 澎湖县| 芜湖县| 文登市| 武鸣县| 鹿泉市| 花莲县| 怀宁县| 宜章县| 灵山县| 阳春市| 会同县| 淅川县| 双桥区| 延川县| 桑植县| 正蓝旗| 那曲县| 桂阳县| 泰来县| 磐安县| 丹寨县| 奉化市| 吉木乃县| 安岳县| 桐乡市| 曲松县| 长葛市| 浙江省| 曲水县| 大城县| 博爱县|