Как исправить ошибку в этом коде b-дерева при удалении узла - PullRequest
0 голосов
/ 06 января 2019

Я использую код снизу url для реализации структуры данных btree, но иногда получаю ошибку дампа ядра в коде при удалении ключа. Как я могу исправить ошибку в этом коде?

https://github.com/khalibartan/Data-structure-codes-in-C/blob/master/Codes/btree.c

I have changed doRightshift function which cause for core dump error
void doRightShift(struct btreeNode *myNode, int pos) {
    struct btreeNode *x = myNode->link[pos];
    int j = x->count;
    while (j > 0) {
            x->val[j + 1] = x->val[j];
            x->link[j + 1] = x->link[j];
            j--;
}

but still sometimes getting problem of deleting multiple values instead of one
...