25
备注:
|
1025
|
删除的内容标记成这样。 | 加入的内容标记成这样。 |
行号 1: | 行号 1: |
在这里详述 查找. | = 查找 = == 概念 == 平均查找长度: 查找成功时的平均查找长度: == 线性结构的查找 == 查找结构: {{{#!cplusplus typedef int key_type; typedef struct{ key_type key; info_type otherinfo; }record_type; typedef record_type elem_type; typedef struct { elem_type elem[MAXSIZE]; int size; }seq_list; }}} === 顺序查找 === {{{#!cplusplus int seq_search(seq_list *r, key_type key) { int i; for(i = 0; i < r->size; i++) if(r->elem[i].key == key) return i; return -1; } }}} === 折半查找 === 折半查找要求元素先排序 {{{#!cplusplus int bin_search(seq_list *r, key_type key) { int low = 0, high = r->size; while(low < high) { int mid = (low + high) / 2; if(r->elem[mid].key == key) return mid; else if(r->elem[mid].key < key) low = mid + 1; else high = mid; } return -1; } }}} == 树型结构查找 == == 哈希表 == |
查找
1. 概念
平均查找长度:
查找成功时的平均查找长度:
2. 线性结构的查找
查找结构:
2.1. 顺序查找
2.2. 折半查找
折半查找要求元素先排序
3. 树型结构查找