数据结构(15) - 顺序查找
顺序查找是按照序列原有顺序对数组进行遍历比较查询的基本查找算法。对于任意一个序列以及一个给定的元素,将给定元素与序列中元素依次比较,直到找出与给定关键字相同的元素,或者将序列中的元素与其都比较完为止。
1 /** 2 * C data structure sequence search example. 3 * 4 * License - MIT. 5 */ 6 7 #include <stdio.h> 8 9 10 #define DISPLAY_ARRAY(i, buf, len) \ 11 do { \ 12 for (i = 0; i < len; i++) \ 13 printf("%d ", buf[i]); \ 14 printf("\n"); \ 15 } while(0) 16 17 18 /** 19 * sequence_search - Sequence search. 20 */ 21 int sequence_search(int *buf, int len, int key) 22 { 23 for (int i = 0; i < len; i++) { 24 if (key == buf[i]) 25 return i; 26 } 27 28 return -1; 29 } 30 31 32 /** 33 * Main function. 34 */ 35 int main(void) 36 { 37 int i = 0; 38 int ret = -1; 39 int key = 10; 40 int buf[] = {83, 21, 28, 47, 69, 10, 43, 33, 5, 41}; 41 int len = sizeof(buf) / sizeof(int); 42 43 printf("The original array:\n"); 44 DISPLAY_ARRAY(i, buf, len); 45 46 ret = sequence_search(buf, len, key); 47 48 if (0 > ret) { 49 printf("Not found key: %d.\n", key); 50 } 51 else { 52 printf("Find key %d at index: %d.\n", key, ret); 53 } 54 55 return 0; 56 }
详情可参考Github: [Link] [https://github.com/Phoebus-Ma/C-Helper/tree/main/Class-1/Search.C].
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~