diff --git a/a.out b/a.out index 141e658942b535d3ec055993f72e88b14421b025..427dc8639b9c9300cda49e4a4301f993551e324b 100644 Binary files a/a.out and b/a.out differ diff --git a/t2.c b/t2.c index 284893cde836f39584d44264e054e866f3bd22aa..ae0d0b0c7934b97d78de85a8958acbe931b1912a 100644 --- a/t2.c +++ b/t2.c @@ -179,6 +179,11 @@ void calculate_finger_table(Node* head, int max_id) { while(temp->id < finger_id && temp->next != head) { temp = temp->next; } + if(temp->next == head && temp->id < finger_id){ + temp = head; + } + if(temp->id == current->id) + temp = temp->next; current->finger[k-1] = temp->id; } current->tam_finger = log2_max_id;