日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

分治算法实例

發布時間:2023/12/20 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 分治算法实例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

實驗題目:

分治算法

實驗目的和要求:

給定n個整數的數組A以及一個數x,設計一個分治算法,求出x在數組中出現的次數,并分析時間復雜度。

實驗過程:

#include<stdio.h>
int count(int a[], int p, int r, int x) {
int q;
if (p == r) {//p,r分別為子序列的左右邊界下標,當兩者等時,表示遞歸出口
if (a[p] == x)
return 1;
else
return 0;
}
else
q = (p + r) / 2;//將問題不斷劃分為兩子問題,直到子問題只有一個元素,遞歸結束
return(count(a, p, q, x) + count(a, q + 1, r, x));
}

int main() {
int a[] = { 1,2,3,4,5,2,3};//給定數組。
int x, n;
printf(“請輸入待查找的數據:”);
scanf_s(“%d”, &x);
n = count(a, 0, 6, x);
if (n == 0)
printf(“不存在\n”);
else
printf(“存在,該數據在數組中的個數為%d\n”, n);
return 0;

實驗結果:

分為存在和不存在兩種情況
輸入2,

輸入7

總結

以上是生活随笔為你收集整理的分治算法实例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。