Advertisement
Guest User

Untitled

a guest
Feb 21st, 2019
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.53 KB | None | 0 0
  1. struct {
  2. int key;
  3. int data;
  4. } table[100];
  5.  
  6. int n; /* tableに登録されているデータの個数 */
  7.  
  8. int binary_search(int key)
  9. {
  10. int low, high, middle;
  11.  
  12. low = 0;
  13. high = n - 1;
  14. while (low <= high) {
  15. middle = (low + high) / 2;
  16. if (key == table[middle].key)
  17. return (table[middle].data); /* 見つかった */
  18. else if (key < table[middle].key)
  19. high = middle - 1;
  20. else /* key > table[middle].keyである */
  21. low = middle + 1;
  22.  
  23. }
  24. return -1;
  25. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement