亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

c語言中如何實現查詢功能

小億
160
2023-12-01 01:17:11
欄目: 編程語言

在使用C語言編寫程序時,可以使用以下方法實現查詢功能:

  1. 使用線性查找:遍歷數組或列表,逐一比較元素與目標值,找到匹配的元素即可。這種方法適用于無序的數據集合。
#include <stdio.h>

int linearSearch(int arr[], int size, int target) {
    for (int i = 0; i < size; i++) {
        if (arr[i] == target) {
            return i; // 返回目標值在數組中的索引
        }
    }
    return -1; // 如果沒有找到目標值,返回-1
}

int main() {
    int arr[] = {3, 1, 5, 2, 4};
    int target = 5;
    int size = sizeof(arr) / sizeof(arr[0]);
    
    int result = linearSearch(arr, size, target);
    
    if (result != -1) {
        printf("目標值在數組中的索引為: %d\n", result);
    } else {
        printf("目標值未找到\n");
    }
    
    return 0;
}
  1. 使用二分查找:對于有序的數據集合,可以使用二分查找來提高查詢效率。二分查找的思想是將有序數據集合分成兩半,判斷目標值與中間元素的大小關系,從而確定目標值可能在哪一半中,然后再對該半部分進行二分查找,重復上述過程直至找到目標值或確定目標值不存在。
#include <stdio.h>

int binarySearch(int arr[], int size, int target) {
    int left = 0;
    int right = size - 1;

    while (left <= right) {
        int mid = left + (right - left) / 2;

        if (arr[mid] == target) {
            return mid; // 返回目標值在數組中的索引
        } else if (arr[mid] < target) {
            left = mid + 1; // 目標值在右半部分
        } else {
            right = mid - 1; // 目標值在左半部分
        }
    }

    return -1; // 如果沒有找到目標值,返回-1
}

int main() {
    int arr[] = {1, 2, 3, 4, 5};
    int target = 5;
    int size = sizeof(arr) / sizeof(arr[0]);

    int result = binarySearch(arr, size, target);

    if (result != -1) {
        printf("目標值在數組中的索引為: %d\n", result);
    } else {
        printf("目標值未找到\n");
    }

    return 0;
}

上述代碼示例中,分別演示了使用線性查找和二分查找來實現查詢功能。根據具體需求和數據集合的特點,可以選擇合適的方法來實現查詢功能。

1
宣威市| 太保市| 绥滨县| 古浪县| 汽车| 吉木乃县| 葵青区| 栖霞市| 乌拉特后旗| 丰宁| 万年县| 龙井市| 大足县| 河北区| 高台县| 石景山区| 海安县| 信阳市| 右玉县| 潮州市| 紫阳县| 洛浦县| 秀山| 吴桥县| 突泉县| 正蓝旗| 道真| 吴忠市| 峨边| 博罗县| 曲阜市| 惠安县| 新河县| 西和县| 绩溪县| 米脂县| 方城县| 青铜峡市| 渝北区| 隆林| 崇文区|