2016-11-25 56 views
-1

我有一個程序從文本文件中讀取字符串,然後將它們存儲在AVL樹中,我也必須刪除節點並插入新的命令行中的一些。 我知道如何做到這一點,當節點有int作爲鍵,但我的字符串。如何搜索,插入,刪除AVL樹中的節點,當密鑰是一個字符串

我應該如何解決這個問題?

typedef struct Node { 
    int height; 
    int count; 
    char key[10]; 
    struct Node * left; 
    struct Node * right; 
} Node; 

回答

0

我知道如何做到這一點,當節點有整數作爲鍵,但我 都是字符串。

一樣,你只需要改變的比較功能(比較字符串而不是整數),是這樣的:

static int comp_by_key(const void *pa, const void *pb) 
{ 
    const Node *a = pa, *b = pb; 

    return strcmp(a->key, b->key); 
}