中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

c++如何實現排序和查找

發布時間:2022-01-17 09:19:24 來源:億速云 閱讀:184 作者:小新 欄目:大數據

這篇文章主要介紹c++如何實現排序和查找,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

1、用冒泡法對數組進行排序(升序)

#include <stdio.h>#include <stdlib.h>
void sort(int a[], int n){  int i, j, t;  for (i = 0; i < n-1 ; i++)  {    for (j = 0; j < n-1; j++)    {      if (a[j] > a[j+1])      {        t = a[j];        a[j] = a[j+1];        a[j+1] = t;      }    }  }}
int main(){  int a[5], i;  for (i = 0; i < 5; i++)  {    printf("input a[%d]=", i);    scanf("%d", &a[i]);  }  sort(a, 5);  for (i = 0; i < 5; i++)  {    printf("%4d", a[i]);  }  system("pause");  return 0;}

2、用插入法排序將輸入到數組中的元素進行排序

#include <stdio.h>#include <stdlib.h>
void fun(int a[], int n){  int k, j, t;  for (j = 1; j < n; j++)  {    t = a[j];    k = j - 1;    while (k >= 0 && t > a[k])    {      a[k + 1] = a[k];      k--;    }    a[k + 1] = t;  }}
int main(){  int a[5], i;  for (i = 0; i < 5; i++)  {    printf("input a[%d]=", i);    scanf("%d", &a[i]);  }  fun(a, 5);  for (i = 0; i < 5; i++)  {    printf("%4d", a[i]);  }  system("pause");  return 0;}

3、用選擇法將輸入的10個數進行排序

#include <stdio.h>#include <stdlib.h>
int main(){  int i, j, min, tem, a[10];  for (i = 0; i < 10; i++)  {    printf("input a[%d]=", i);    scanf("%d", &a[i]);  }  for (i = 0; i < 10; i++)  {    printf("%d", a[i]);  }  for (i = 0; i < 10 - 1; i++)  {    min = i;    for (j = i + 1; j < 10; j++)    {      if (a[min] > a[j])      {        min = j;      }    }    tem = a[i];    a[i] = a[min];    a[min] = tem;  }  printf("\n");  for (i = 0; i < 10; i++)  {    printf("%d", a[i]);  }  system("pause");  return 0;}

4、用折半查找法,將查看輸入的數字是否在10個元素的升序數組中,如果在是第幾個

#include <stdio.h>#include <stdlib.h>
int main(){  int a[10] = { 12,32,45,62,71,76,80,85,90,95 };  int num, bott, top, mid;  printf("input a number:");  scanf("%d", &num);  bott = 0;  top = 9;  while (bott <= top)  {    mid = (bott + top) / 2;    if (num == a[mid])    {      printf("%d是第%d個數", num, mid + 1);      break;    }    else if (num < a[mid])    {      top = mid - 1;    }    else    {      bott = mid + 1;    }  }  if (bott > top)  {    printf("no\n");  }  system("pause");  return 0;}

以上是“c++如何實現排序和查找”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

c++
AI

武清区| 鄄城县| 三江| 图木舒克市| 手游| 尼木县| 沂源县| 康保县| 双流县| 准格尔旗| 绵竹市| 克东县| 西昌市| 武邑县| 无棣县| 新乡市| 合川市| 莎车县| 文化| 西青区| 天长市| 盱眙县| 准格尔旗| 新邵县| 宜昌市| 长沙市| 连云港市| 嵊州市| 泽州县| 黄龙县| 沅江市| 东至县| 江口县| 竹溪县| 称多县| 盱眙县| 蕉岭县| 疏附县| 九台市| 分宜县| 潮安县|